如何在Linux中编写系统托盘的应用程序

and*_*vig 26 c c++ python linux system-tray

如何编写我的应用程序,以便它将存在于Linux上的系统托盘中?事实上,就像CheckGmail一样.

和CheckGmail一样,当我将鼠标悬停在托盘图标上时,我也会想要出现某种弹出框.

有没有API,类或其他东西呢?我能找到的所有东西似乎都适用于Windows.

如果我必须特定于语言,那么最好是在C/C++中,但Python中的解决方案很可能也会这样做.

谢谢.

Ada*_*kin 27

Qt框架包含一个QSystemTrayIcon类.这意味着您可以使用C++或Python(或任何其他使用Qt绑定的语言,包括C#,Ada,Pascal,Perl,PHP和Ruby)编写应用程序,并在Windows,Linux,Mac或任何其他受支持的Qt操作上运行您的应用程序系统.我应该补充一点,Qt应用程序通常可以很好地在您使用的任何操作系统上查找本机,而无需花费太多精力(即使在Linux上的Gnome/KDE之间).Qt还有优秀的文档,大量的示例代码,慷慨的许可证,并且维护良好.


And*_*ius 9

蟒蛇,eggtrayicon

这是python-eggtrayiconDebian/testing中的debian包附带的例子......

#!/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()
Run Code Online (Sandbox Code Playgroud)

它只是在通知区域中显示标签.(搜索上,你可能会得到很多更好的命中......)


Kal*_*son 6

Qt是跨平台的,并且支持系统托盘.它的Python绑定也很不错.有关详细信息,请参阅示例应用程序