Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyGTK:双击CellRenderer_Python_Pygtk_Cellrenderer_Double Click - Fatal编程技术网

Python PyGTK:双击CellRenderer

Python PyGTK:双击CellRenderer,python,pygtk,cellrenderer,double-click,Python,Pygtk,Cellrenderer,Double Click,在我的PyGTK应用程序中,我目前使用“可编辑”使单元格可编辑。但是,由于我的手机内容有时真的很大,所以当用户双击手机时,我想让他在新窗口中进行更改。但是我不知道如何在特定的CellRenderer上双击——我不想编辑整行,也不想为整行设置回调,只针对可能出现太长内容的列。如何使用CellRenderText()或类似的工具来实现这一点 我当前的单元格生成代码是: cols[i] = gtk.TreeViewColumn(coltitle) cells[i] = gtk.CellRenderer

在我的PyGTK应用程序中,我目前使用“可编辑”使单元格可编辑。但是,由于我的手机内容有时真的很大,所以当用户双击手机时,我想让他在新窗口中进行更改。但是我不知道如何在特定的CellRenderer上双击——我不想编辑整行,也不想为整行设置回调,只针对可能出现太长内容的列。如何使用CellRenderText()或类似的工具来实现这一点

我当前的单元格生成代码是:

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])

谢谢

我认为这不可能直接实现。但是,您可以连接到
gtk.TreeView
上的
按钮按下事件。然后,当
event.type
等于
gtk.gdk.\u 2按钮按
时,使用
gtk.TreeView.get_path_位置()
x
y
转换到树位置。这将返回一个指示行的树路径和
gtk.TreeViewColumn
对象,在该对象上进行了单击。

非常脏:-D-但是,如果这是唯一可能的话…;-)