如何在PyGTK中捕获TreeView中的选定行和列?

时间:2013-01-16 06:47:58

标签: python gtk pygtk gtk2 gtktreeview

我有一个使用gtk.TreeView创建的表格。我想知道用户选择了哪一行和一列。这怎么可能?

1 个答案:

答案 0 :(得分:1)

您想要的行的方法是gtk.TreeSelection.get_selected或gtk.TreeSelection.get_selected_rows,具体取决于您选择的选择方法(SELECTION_SINGLE,SELECTION_MULTIPLE或SELECTION_BROWSE)。

http://www.pygtk.org/docs/pygtk/class-gtktreeselection.html#method-gtktreeselection--get-selected

对于列,您可以使用gtk.TreeView.get_path_at_pos

http://pygtk.org/docs/pygtk/class-gtktreeview.html#method-gtktreeview--get-path-at-pos

但是你需要的不仅仅是这个方法,因为你需要先为它提供坐标。这可能会让您更深入地了解它:

http://www.gtkforums.com/viewtopic.php?f=3&t=2645

get_path_at_pos将返回路径和列,因此如果您确实需要知道所单击的列,这可能是您要采用的方法。因此关键在于上面示例中列出的按钮按下事件以及http://www.pygtk.org/docs/pygtk/class-gdkevent.html中的PyGTK