7

我正在尝试在应用程序中使用 Gtk.Switch 小部件,但“激活”信号未通过点击触发。通过在其上按回车/空格键使用带有键盘的小部件时,它可以正常工作,但单击不会触发“激活”事件。

任何想法为了注册 Gtk.Switch 上的点击信号要做什么

from gi.repository impoty Gtk, GObject

def my_callback(widget, data=None):
    print 'Event Fired'

switch = Gtk.Switch()
window = Gtk.Window()
window.add(switch)
switch.connect('activate', my_callback)
window.show_all()
GObject.MainLoop().run()
4

2 回答 2

17

实际上,更好的方法是连接到 notify::active 事件。

于 2011-10-14T18:59:28.823 回答
-1

好的,环顾了几天后,我在这里提出了问题,并在5分钟后找到了答案。

要注册鼠标点击,必须使用 'button-press-event' 信号而不是 'activate' 信号。

可能会帮助有类似问题的人。

GTK 需要更好的文档。

于 2011-08-19T11:38:17.620 回答