我需要检测鼠标指针何时离开GtkNotebook中的区域。通常,这可以通过motion_notify事件实现,但如果指针移动得足够快,则不会触发事件。因为这是GtkNotebook中的某个像素区域,所以不可能使用GtkEventBox。这样做的正确方法是什么?
答案 0 :(得分:5)
您应该使用enter-notify-event
和leave-notify-event
信号。
答案 1 :(得分:1)
您可以获得进入和离开通知,但只能定期进行动作通知。如果指针移动得足够快,您将无法获得您所关注区域内坐标的通知。
捕获此100%的唯一方法是将EventBox(或其他一些窗口小部件)加载到封装此空间的窗口小部件层次结构中。请注意,您可以使用多个小部件来定义区域。
最后,如果您没有收到来自窗口小部件的进入或离开通知,您可能需要修改窗口小部件的事件掩码。
myWidget->add_events(Gdk::ENTER_NOTIFY_MASK);