使用GTKInspector模拟GTK +中的触摸屏

时间:2019-10-08 07:49:48

标签: gtk gtk3 pygtk

现在,我正在Python3中开发GTK +应用程序。在应用程序的一部分中,我需要长按信号,因此,我使用了如下的Gtk.GestureLongPress类:

npm install --save-dev @types/mocha

最后,在运行应用程序之后,我想测试一下功能。但是,我没有任何触摸设备可以测试触摸操作,所以这就是我使用GtkInspector的原因。在GtkInspector中,我启用了如下所示的Simulate触摸屏,但仍然没有任何动作。有什么建议么?我错了什么,或者应该怎么做才能使其正常工作? enter image description here

1 个答案:

答案 0 :(得分:1)

可能这只是内存管理问题。如果longPress对象超出范围,它将被销毁,因为小部件上没有引用。因此,您可以将longPress设置为类成员,以防止longPress超出范围:

self.buttonLongPress = Gtk.GestureLongPress.new(self.button)
self.buttonLongPress.connect("pressed", longPressFunction)
self.buttonLongPress.connect("cancelled", normalPressFuntion)

注意:只有在使用时,您才必须模拟触摸屏:

self.buttonLongPress.set_touch_only(True)
相关问题