触发 Gtk+悬停时的菜单栏

发布于 2024-08-31 00:36:59 字数 169 浏览 5 评论 0原文

我在 PyGtk+ 中编写了一个 Gnome 窗口切换器小程序,使用菜单项来表示桌面上运行的不同应用程序。我想做的一件事是当我将鼠标悬停在菜单栏上时激活光标下的菜单项。我可以连接到菜单栏上的“输入通知事件”,但我不知道触发它时会做什么。

这就是我的问题,当我将鼠标悬停在其父项上时,如何使菜单栏的子菜单打开?

I've writing a Gnome window-switcher applet in PyGtk+ using menu items to represent the different applications running on the desktop. One thing I'd like to do is to activate the menu item under the cursor when I hover over the menubar. I can connect to the 'enter-notify-event' on the menu bar, but I don't know what to when it is triggered.

So that's my question, how can I make the submenus of the menu bar open when I hover over their parent items?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

2024-09-07 00:36:59

这应该可以解决问题:

event = gtk.gdk.Event(gtk.gdk.BUTTON_RELEASE)
event.window = enter_event.window
event.x = enter_event.x
event.y = enter_event.y
event.button = 1
menu.emit('button_release_event', event)

它将创建一个新的事件对象,使用 enter-notify-event 中的 enter_event 设置它,然后在您的 上发出它菜单

您可以在此处阅读有关活动的更多信息:
http://www.pygtk.org/docs/pygtk/class-gdkevent。 html

This should do the trick:

event = gtk.gdk.Event(gtk.gdk.BUTTON_RELEASE)
event.window = enter_event.window
event.x = enter_event.x
event.y = enter_event.y
event.button = 1
menu.emit('button_release_event', event)

It will create a new event object, set it up using the enter_event from your enter-notify-event and then emit it on your menu.

You can read more on events here:
http://www.pygtk.org/docs/pygtk/class-gdkevent.html

献世佛 2024-09-07 00:36:59

可以在进入的位置模拟点击事件。

You can emulate the click event in the location of entering.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文