Windows有“系统托盘”,可存放时钟和运行良好的服务,如MSN,Steam等。
我想开发一个wxPython托盘应用程序,但我想知道这将如何移植到其他平台。每个平台上的托盘等价物是多少,以及支持Windows,OSX和Linux需要多少手动工作(特别是哪些shell最友好)。
答案 0 :(得分:6)
wx是一个跨平台的GUI和工具库,支持Win32,Mac OS X,GTK +,X11,Motif,WinCE等。如果您使用它的类,那么您的应用程序应该适用于所有这些平台。 对于系统托盘,请查看wxTaskBarIcon(http://docs.wxwidgets.org/stable/wx_wxtaskbaricon.html#wxtaskbaricon)。
答案 1 :(得分:3)
在OS X下,您有状态菜单栏 - 最右侧的项目通常与状态相关(例如电池状态,WiFi连接等)。
尝试搜索NSStatusBar和NSMenuExtra。将应用程序转换为具有NSStatusBar菜单并且不会出现在Dock中的应用程序几乎是微不足道的。如何做tutorials around。
答案 2 :(得分:2)
对于许多Linux桌面系统(Gnome,KDE等),实施了Freedesktop的SysTray Protocol。如果任何其他解决方案失败,您可以尝试。
答案 3 :(得分:1)
在Linux上它真的取决于你 - 那里有不同的编程环境,有些窗口管理器甚至没有托盘区域。 Altho,如果你使用Gtk(而且wx确实是Gtk),gtk.StatusIcon就是你的朋友。
Here就是一些例子(没有检查它们是否真的有用,但应该向你显示路径)。
对于wx
,我找到了一些示例代码here。
答案 4 :(得分:1)
使用Qt:Qt Systray Example
这将在Qt运行并支持此类图标的所有平台上显示系统托盘图标。但是,当不支持系统托盘功能时,您需要提出一个策略。