it-swarm.com.de

Hinzufügen eines Symbols zur Taskleiste (Infobereich)

Mögliches Duplikat:
Wie programmiere ich ein Statussymbol, das sowohl in Ubuntu 11.04 als auch in anderen Distributionen angezeigt wird?

Hallo, ich habe eine kleine Audio-Aufnahme-Anwendung mit GTK/GDK programmiert. (siehe Bild ). Und ich möchte ein Tray-Icon hinzufügen, damit Benutzer das Anwendungsfenster und die Aufnahme von dort aus steuern können.

Hinzufügen eines Tray-Symbols: Ich habe geplant, die GtkStatusIcon-Klasse für diese Aufgabe zu verwenden. Ref: http://library.gnome.org/devel/gtk/2.11/GtkStatusIcon.html

Ist GtkStatusIcon die empfohlene Lösung, die auch in Ubuntu Unity und auf dem GNOME 3.0-Desktop funktioniert? Ich habe schon ein bisschen gegoogelt und ein gutes Beispiel auf GtkStatusIcon gefunden.

Kann ich Libindicator auch für diese Aufgabe verwenden? Ref: https://launchpad.net/libindicator

5
Moma Antero

GtkStatusIcon wird in Unity nicht unterstützt .

Wenn Sie ein angezeigtes Symbol benötigen, verwenden Sie stattdessen Anwendungsindikatoren. Sie sind recht einfach zu handhaben, aber ein Nachteil ist, dass benutzerdefinierte Symbole noch nicht offiziell unterstützt werden (siehe diese Frage hier ) und dass Anwendungsindikatoren in anderen Distributionen möglicherweise nicht verfügbar sind.

Darüber hinaus funktioniert das Definieren von benutzerdefinierten Symbolen , wie hier vorgeschlagen , in früheren Versionen von Anwendungsindikatoren, die in verwendet werden, nicht 10.04 LTS.

Daher müssen Sie möglicherweise von Ihrem Programm überprüfen lassen, ob Anwendungsindikatoren vorhanden sind, und außerdem die Version überprüfen, über die sie verfügen, damit sie ordnungsgemäß ausgeführt werden. Wenn keine Anwendungsindikatoren bereitgestellt werden oder Ihre Anwendung auch in anderen Distributionen ausgeführt werden soll, können Sie auch GtkStatusIcons verwenden. In diesem Fall müssen Sie für beide Pfade programmieren, wie hier vorgeschlagen .

Soweit ich heute sehen kann, werden GtkStatusIcons weiterhin unterstützt, wenn der klassische GNOME-Desktop in Ubuntu 11.04 ausgeführt wird, aber ich kenne GNOME3 nicht.

8
Takkat