如何编写我的应用程序,以便它将存在于Linux上的系统托盘中?事实上,就像CheckGmail。
与CheckGmail一样,当我将鼠标悬停在托盘图标上时,我也会想要显示某种弹出框。
是否有用于执行此操作的API,类或其他内容?我能找到的所有内容似乎都适用于Windows。
如果我必须特定于语言,那么最好是在C / C ++中,但Python中的解决方案很可能也会这样做。
感谢。
答案 0 :(得分:27)
Qt框架包含QSystemTrayIcon类。这意味着您可以用C ++或Python(或任何其他language with Qt bindings)编写应用程序,包括C#,Ada,Pascal,Perl,PHP和Ruby),并在Windows,Linux,Mac或任何其他受支持的Qt上运行您的应用程序操作系统。我应该补充一点,Qt应用程序通常可以很好地在您使用的任何操作系统上查找本机,而不需要太多努力(即使在Linux上的Gnome / KDE之间)。 Qt还有优秀的文档,大量的示例代码,慷慨的许可证,并且维护良好。
答案 1 :(得分:9)
这是Debian / test中debian包python-eggtrayicon
附带的例子......
#!/usr/bin/python
import pygtk
pygtk.require("2.0")
import gtk
import egg.trayicon
t = egg.trayicon.TrayIcon("MyFirstTrayIcon")
t.add(gtk.Label("Hello"))
t.show_all()
gtk.main()
它只是在通知区域中显示标签。 (搜索,你可能会得到很多更好的点击...)
答案 2 :(得分:6)
Qt是跨平台的,并且支持系统托盘。它的Python bindings也很不错。有关详细信息,请参阅example application。
答案 3 :(得分:1)
从python提示符试试这个。
import gtk
icon = gtk.StatusIcon()
icon.set_from_stock(gtk.STOCK_ABOUT)
gtk.main()
您应该在系统托盘中看到一个图标。
有关更大的示例,请参阅此snippet。