我有一个 Glade GUI 描述文件,在一个窗口的 GtkHBox
中有一个 GtkTreeView
; row_activated
信号有一个处理程序。现在,Glade 已自动将该 TreeView 的“事件”属性(继承自GtkWidget
)设置为某个值(GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
)。这有两件奇怪的事情:
- 删除预设值(以便该属性为空)似乎不会破坏应用程序(至少不会破坏旧的 GTK 2.10,我有 atm)。
- 事实上,我之前看到的一个烦人的错误( TreeView 项目无法正确响应展开或折叠点击)现在已经消失了!
我还没有用较新的 GTK 版本对此进行测试,但问题已经存在:这个 events
属性的确切用途是什么?为什么 Glade 会自动且不必要地将其设置为某个值?这是否有一些我不知道的副作用?
最佳答案
这是 glade 中的一个错误,它总是设置它创建的小部件的事件属性。它不知道属性的默认值,所以它总是设置它。
关于linux - GtkWidget.events 属性(例如)GtkTreeView 小部件的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64518/