在我的PyGTK应用程序,我目前使用的“编辑”,使细胞的编辑。但因为我的单元格的内容有时是真的真的很大,我想问更改用户在新窗口中,当他在一个细胞doubleclicks。但我无法找出如何在双击勾上具体cellrenderers - 我不想编辑整行,我也不想设置此回调整行,只为过长的内容列可能发生。我怎样才能做到这一点与CellRendererText()或类似的东西。

我目前细胞生成的代码是:

cols[i] = gtk.TreeViewColumn(coltitle)
cells[i] = gtk.CellRendererText()
cols[i].pack_start(cells[i])
cols[i].add_attribute(cells[i], 'text', i)
cols[i].set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
cols[i].set_fixed_width(100)
cells[i].set_property('editable', True)
cells[i].connect('edited', self.edited, (i, ls))
cols[i].set_resizable(True)
mytreeview.append_column(cols[i])

谢谢!

有帮助吗?

解决方案

相信这直接是不可能的。但是,您可以连接到button-press-eventgtk.TreeView。然后,当event.type使用gtk.gdk._2BUTTON_PRESS等于x,转换ygtk.TreeView.get_path_at_pos()到树中的位置。这将返回指示在其上作出的点击的行和gtk.TreeViewColumn对象两者树路径。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top