【问题标题】:pygtk combobox 'changed' does not workpygtk 组合框“已更改”不起作用
【发布时间】:2010-05-07 18:27:40
【问题描述】:

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

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

【问题讨论】:

    标签: combobox gtk


    【解决方案1】:

    嗯... changed 事件意味着它的名称,即选择已更改。

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

    如果这不起作用,也许 notify::popup-shown 可以工作。 ComboBox 有一个名为@987654322@ 的属性,因此在该属性更改时监听通知,然后检查它是否是从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% 确定破折号是否映射为下划线;您必须对此进行测试。

    【讨论】:

    • 感谢您的快速回复我很感激我已经尝试过同样的问题,当我尝试选择相同的项目时它不会进入事件
    • 当我尝试弹出它不起作用它没有进入事件/功能
    • 那位先生是什么意思?
    • 如果它是 true 或 False,我如何获得该属性? tnx
    • @joven:顺便说一句,如果您觉得这个答案有帮助,请随时投票。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-23
    • 2017-05-25
    • 2023-04-07
    • 1970-01-01
    • 2013-03-01
    • 1970-01-01
    相关资源
    最近更新 更多