User interface gtk树视图单击一次回调

User interface gtk树视图单击一次回调,user-interface,gtk,pygtk,User Interface,Gtk,Pygtk,我有一个像列表视图一样使用的gtk treeview,我想给它一个回调,当用户单击(单键单击,而不是双击)其中的单个条目时激活它。我知道treeview小部件的激活回调会激活双击,如果我只能够设置gtk.gdk.event以便在整个treeview小部件上单击,那么我就不需要这种行为。此外,它内部的cellrenderer对象不继承widget类,这使得它成为一个小部件类,因此我不能特别地对该类进行回调。有人能告诉我如何在gtk treeview中单击一个项目就获得回调吗 另外,任何语言都可以,

我有一个像列表视图一样使用的gtk treeview,我想给它一个回调,当用户单击(单键单击,而不是双击)其中的单个条目时激活它。我知道treeview小部件的激活回调会激活双击,如果我只能够设置gtk.gdk.event以便在整个treeview小部件上单击,那么我就不需要这种行为。此外,它内部的cellrenderer对象不继承widget类,这使得它成为一个小部件类,因此我不能特别地对该类进行回调。有人能告诉我如何在gtk treeview中单击一个项目就获得回调吗


另外,任何语言都可以,但我更喜欢python,因为我的应用程序就是用python编写的。

如果您在树视图中使用gtk.SELECTION\u SINGLE或gtk.SELECTION\u MULTIPLE,只需左键单击即可选择该行。您可以使用或附加到信号来附加到此事件。

如果您在树视图中使用gtk.SELECTION\u SINGLE或gtk.SELECTION\u MULTIPLE,只需单击鼠标左键即可选择该行。您可以通过使用或附加到信号来附加到此事件。

好的,因此我使用了set_select_函数,如果返回true,我将被调用两次,如果我告诉它显式选择路径,我将进入无限循环。有什么我能做的吗?@user381261,如果你有SELECTION_SINGLE,它会被调用两次,一次是被选中的行,一次是被取消选中的行。如果您使用full=True,您可以通过查看is_selected==False来确定哪一行获得单击。好的,所以我使用了set_select_函数,如果返回True,我将被调用两次,如果我告诉它显式选择路径,我将进入无限循环。有什么我能做的吗?@user381261,如果你有SELECTION_SINGLE,它会被调用两次,一次是被选中的行,一次是被取消选中的行。如果使用full=True,则可以通过查看is_selected==False来确定哪一行获得单击。