全部,
在 GTK+ 中有一个名为 GtkComboBox 的小部件。我不知道实现细节,但在 Windows 上它由 2 个小部件组成:文本控件和列表控件。文本控件右侧还有一个小按钮。如果单击该按钮,则会弹出列表控件。

我的问题是:如何检测鼠标点击 GtkComboBox 中的那个按钮?这种点击甚至会发出可以被捕获的信号,还是只是将弹出信号发送到 GtkComboBox 小部件并吃掉鼠标点击?

顺便说一句,它也是 GTK+ 中的复合小部件吗?

任何语言的例子都会很有帮助。

谢谢你。

最佳答案

GtkComboBox 实际上确实“吃掉鼠标点击”,我认为在不修改或子类化 GtkComboBox 小部件的情况下获得您正在寻找的行为会非常棘手。我不会依赖 GtkComboBox 是否是一个复合小部件——这似乎是一个可能会改变的实现细节。

如果您真的想捕获组合框上的鼠标点击,那么您似乎在向上游划桨 - 毕竟,用户还有其他使用小部件的方法(例如,使用键盘)。 The GtkComboBox emits a changed signal whenever the selection changes - could you use that in your application?

关于gtk - 如何检测 GtkComboBox 中的鼠标点击?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9145741/

10-12 17:01