最小化到 gnome 面板

发布于 2024-09-12 17:42:41 字数 241 浏览 8 评论 0原文

我有一个用 python 编写的应用程序,我希望它能够“最小化”到 gnome 面板,就像 gnome 的 rhytmbox 最小化到面板一样。这很容易做到吗?

我已经运行了 此处 中的示例,但未能使它们中的任何一个正常工作,并且这些示例似乎不正是我要找的。有什么好的起点吗?

I have an application written in python, I would like it to be able to "minimize" to the gnome panel, much like how gnome's rhytmbox minimizes to the panel. Is it easily possible to do this?

I've run the examples from here but failed to get any of them working and those don't seem to be exactly what I'm looking for. Any good places to start?

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

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

发布评论

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

评论(1

深海夜未眠 2024-09-19 17:42:41

链接的示例展示了如何编写面板小程序,这已经有一段时间了。相反,您可能想要创建一个 gtk.StatusIcon。状态图标要求用户有一个系统托盘,但考虑到它们的广泛使用几乎涵盖了每个人。

获得状态图标后,最小化到面板就很简单了:

  • 单击图标时显示/隐藏应用程序窗口,可能是在 StatusIcon 的 activate 信号处理程序中;并
  • 监听窗口上的 window-state-event ,拦截 iconify 更改,以便您可以隐藏窗口而不是显示在任务栏中

当然,使用这样的状态图标并不是真的从 UI 角度推荐,但它是目前最实用的解决方案。

The examples linked show how to write panel applets, which have been somewhat discouraged for a while now. Instead, you probably want to create a gtk.StatusIcon. Status icons require the user to have a system tray, but given their widespread use that covers just about everyone.

Once you've got your status icon, minimizing to the panel is a simple matter of:

  • showing/hiding your application window when the icon is clicked, probably in the StatusIcon's activate signal handler; and
  • listen to window-state-event on your window, intercepting iconify changes so that you can hide your window instead of it being shown in the taskbar

Of course, using a status icon like this isn't really recommended from a UI point of view, but it is the most pragmatic solution currently.

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