pygtk组合框“改变”不起作用

时间:2010-05-07 08:48:26

标签: combobox gtk

我正在使用pygtk然后我使用gtk.Combobox当我尝试连接chenged事件它的工作,但当我尝试选择已经选择的项目时,更改的方法不会触发,因为选择没有改变..

所以我的问题是如何连接已更改的事件,即使选择未提前更改

1 个答案:

答案 0 :(得分:1)

嗯......改变后的事件意味着所谓的选择已经改变了。

我建议您尝试收听popdown信号,我相信在菜单关闭时会发出信号。

如果这不起作用,也许notify :: popup-shown可以工作。 ComboBox有一个名为popup-shown的属性,因此在该属性发生变化时收听通知,然后检查它是否是从TRUEFALSE的转换,应该会有所帮助:

combo.connect("notify::popup-shown", popup_shown_callback)

在回调中,您可以像这样访问property value(假设PyGTK 2.8或更高版本):

print "mycombo's popup-shown property is:", mycombo.props.popup_shown

我不是100%确定破折号被映射到下划线;你必须测试这个。