Подтвердить что ты не робот

Как написать приложение для системного трея в Linux

Как написать мое приложение, чтобы он работал в системном трее в Linux? Фактически, как и CheckGmail.

Как и в случае с CheckGmail, я также хотел бы, чтобы я отображал значок в виде значка.

Есть ли API, класс или что-то еще для этого? Все, что я могу найти, похоже, для Windows.

Если я должен быть специфичным для языка, то желательно в C/С++, но скорее всего это и будет решение в Python.

Спасибо.

4b9b3361

Ответ 1

Структура Qt содержит класс QSystemTrayIcon. Это означает, что вы можете написать приложение на С++ или Python (или любой другой язык с привязками Qt, включая С#, Ada, Pascal, Perl, PHP и Ruby) и запустить приложение в Windows, Linux, Mac или любой другой поддерживаемой операционной системе Qt. Я должен добавить, что приложения Qt, как правило, неплохо смотрятся на любой операционной системе, которую вы используете без особых усилий (даже между Gnome/KDE в Linux). Qt также имеет отличную документацию, много примеров кода, щедрую лицензию и хорошо поддерживается.

Ответ 2

питон-eggtrayicon

вот пример, который поставляется с пакетом debian python-eggtrayicon в debian/testing...

#!/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()

Он просто показывает метку в области уведомлений. (Ищите по этому поводу, и вы, вероятно, получите гораздо лучшие хиты...)

Ответ 4

В командной строке python попробуйте это.

import gtk

icon = gtk.StatusIcon()
icon.set_from_stock(gtk.STOCK_ABOUT)

gtk.main()

Вы должны увидеть значок на панели задач.

Смотрите snippet для более крупного примера.