Auch heute noch sind Taskleistensymbole ein magisches Feature. Indem Sie einfach mit der rechten Maustaste auf ein Symbol klicken und die gewünschte Aktion auswählen, können Sie Ihr Leben erheblich vereinfachen und viele unnötige Klicks bei Ihren täglichen Aktivitäten reduzieren. Wenn es um nützliche Taskleistensymbole geht, fallen mir Skype, Dropbox und VLC ein: Allerdings sind Taskleistensymbole tatsächlich viel nützlicher; Sie können je nach Bedarf eigene Taskleistensymbole erstellen. Diese Anleitung zeigt Ihnen, wie das in wenigen einfachen Schritten geht. Voraussetzungen Wir werden mit Python einen benutzerdefinierten Taskleistenindikator implementieren. Python ist wahrscheinlich auf allen wichtigen Linux-Distributionen bereits standardmäßig installiert, Sie müssen also nur sicherstellen, dass es installiert ist (hier wird Version 2.7 verwendet). Außerdem müssen wir das Paket gir1.2-appindicator3 installieren. Mit dieser Bibliothek können wir ganz einfach Systemsymbolindikatoren erstellen. Installation auf Ubuntu/Mint/Debian: Installation auf Fedora: Suchen Sie bei anderen Distributionen einfach nach dem Paket, das „appindicator“ enthält. Ab GNOME Shell 3.26 wurde das Taskleistensymbol entfernt. Sie müssen diese Erweiterung (oder andere Erweiterungen) installieren, um diese Funktion für Ihren Desktop zu aktivieren. Andernfalls können Sie den von uns erstellten Indikator nicht sehen. Basiscode Hier ist der Basiscode für den Indikator: #!/usr/bin/python Betriebssystem importieren aus gi.repository importiere Gtk als gtk, AppIndicator3 als Appindicator def main(): Indikator = App-Indikator.Indikator.neu("customtray", "halb-mit Sternchen markiert-symbolisch", App-Indikator.IndikatorKategorie.APPLICATION_STATUS) Indikator.Status festlegen(AppIndikator.IndikatorStatus.AKTIV) Indikator.set_menu(Menü()) gtk.main() def menü(): Menü = gtk.Menü() command_one = gtk.MenuItem('Meine Notizen') command_one.connect('aktivieren', Hinweis) Menü.Anhängen(Befehl_Eins) exittray = gtk.MenuItem('Ablage verlassen') exittray.connect('aktivieren', beenden) Menü.Anhängen(ExitTray) Menü.alles_anzeigen() Menü zurück def Hinweis(_): os.system("gedit $HOME/Dokumente/notes.txt") def beenden(_): gtk.main_quit() wenn __name__ == "__main__": hauptsächlich() Wir erklären gleich, wie dieser Code funktioniert. Aber speichern wir diesen Text vorerst als tray.py und führen ihn mit Python aus: Wir sehen den Indikator wie unten dargestellt laufen:
Lassen Sie uns nun erklären, wie dieser Zauber funktioniert: Die ersten drei Codezeilen geben einfach den Python-Pfad an und importieren die erforderlichen Bibliotheken. def main(): Dies ist die Hauptfunktion des Indikators. Der Code in dieser Funktion wird zum Initialisieren und Erstellen des Indikators verwendet. Indikator = App-Indikator.Indikator.neu("customtray","halb-sternförmig-symbolisch", appindicator.IndicatorCategory.APPLICATION_STATUS): Hier geben wir an, dass ein neuer Indikator mit dem Namen customtray erstellt wird. Dies ist ein eindeutiger Name für den Indikator, damit das System ihn nicht mit anderen laufenden Indikatoren verwechselt. Gleichzeitig verwenden wir das Symbol mit der Bezeichnung „semi-starred-symbolic“ als Standardsymbol für den Indikator. Sie können dies in einen beliebigen anderen Wert ändern, beispielsweise „Firefox“ (wenn der Indikator das FireFox-Symbol verwenden soll) oder einen anderen gewünschten Symbolnamen. Der letzte mit indicator.set_menu(menu()): Hier sagen wir, dass wir die Funktion menu() (die wir später definieren werden) verwenden möchten, um Menüelemente für unseren Indikator zu erstellen. Dies ist wichtig, damit Sie mit der rechten Maustaste auf den Indikator klicken und eine Liste möglicher Aktionen anzeigen können. gtk.main(): Führt die GTK-Hauptschleife aus. In menu() definieren wir das Verhalten oder die Elemente, die der Indikator bereitstellen soll. command_one = gtk.MenuItem('Meine Notizen') initialisiert einfach das erste Menüelement mit dem Text „Meine Notizen“, dann verbindet command_one.connect('activate', note) das Aktivierungssignal des Menüs mit der später definierten Funktion note(); mit anderen Worten sagen wir unserem System: „Wenn dieses Menüelement angeklickt wird, führe die Funktion note() aus“. Schließlich fügt menu.append(command_one) das Menüelement zur Liste hinzu. menu.show_all() und return menu sind lediglich normaler Code, der die Menüelemente an den Indikator zurückgibt. Unter der Notiz(_) steht der Code, der ausgeführt wird, wenn auf den Menüpunkt „Meine Notizen“ geklickt wird. Hier schreiben wir einfach Fügen Sie die benötigten Aufgaben hinzu Sie müssen lediglich zwei Stellen im Code ändern: Speisekarte() Angenommen, Sie möchten ein neues Menüelement erstellen, das beim Anklicken mithilfe von VLC eine bestimmte Video-/Audiodatei von Ihrer Festplatte abspielt? Fügen Sie dazu einfach die folgenden drei Zeilen in Zeile 17 ein: command_two = gtk.MenuItem('Video/Audio abspielen') command_two.connect('aktivieren', abspielen) menu.append(Befehl_zwei) Fügen Sie dann Folgendes zu Zeile 30 hinzu: def spielen(_): os.system("vlc /home/<Benutzername>/Videos/somevideo.mp4") Ersetzen Sie „ Sie werden sehen: Erstellen Sie einen benutzerdefinierten Taskleistenindikator für Ihre Aufgaben unter Linux Und wenn Sie auf das neu erstellte Menüelement klicken, beginnt die VLC-Wiedergabe! Um weitere Projekte/Aufgaben zu erstellen, wiederholen Sie einfach die obigen Schritte. Aber Vorsicht, Sie müssen command_two durch etwas anderes ersetzen, beispielsweise command_three, damit es nicht zu Konflikten zwischen den Variablen kommt. Definieren Sie dann die neue Funktion, genau wie die Funktion play(_). Die Möglichkeiten sind endlos; ich verwende diese Methode beispielsweise, um Daten aus dem Web abzurufen (mithilfe der Bibliothek urllib2) und anzuzeigen. Ich verwende es auch, um mit dem Befehl mpg123 MP3-Dateien im Hintergrund abzuspielen, und ich habe ein weiteres Menüelement definiert, um „killall mpg123“ zu verwenden und die Audiowiedergabe jederzeit zu stoppen. Beispielsweise dauert das Beenden von CS:GO auf Steam sehr lange (das Fenster schließt sich nicht automatisch). Als Workaround minimiere ich einfach das Fenster und klicke auf ein selbst erstelltes Menüelement, das den Befehl Mit diesem Indikator können Sie alles Mögliche tun: Systempakete aktualisieren, andere Skripte ausführen – buchstäblich alles. Automatischer Start Wir hoffen, dass der Taskleistenindikator automatisch nach dem Systemstart gestartet werden kann, ohne dass er jedes Mal manuell ausgeführt werden muss. Fügen Sie hierzu einfach den folgenden Befehl zu Ihrer Startanwendung hinzu (Sie müssen dabei allerdings den Pfad zu tray.py durch Ihren eigenen ersetzen): Beim nächsten Neustart des Systems wird die Anzeige nach dem Systemstart automatisch wieder in Betrieb genommen! abschließend Sie wissen jetzt, wie Sie Ihre eigenen Taskleistenindikatoren für die gewünschten Aufgaben erstellen. Je nach Art und Anzahl der täglich auszuführenden Aufgaben kann dieser Ansatz viel Zeit sparen. Manche Leute ziehen es vor, Aliase über die Befehlszeile zu erstellen. Dazu müssen Sie jedoch jedes Mal ein Terminalfenster öffnen oder einen Dropdown-Terminalemulator zur Verfügung haben. Hier hingegen ist dieser Taskleistenindikator immer funktionsfähig und verfügbar. Haben Sie diese Methode schon einmal zum Ausführen Ihrer Aufgaben verwendet? Würde gerne Ihre Meinung hören. Zusammenfassen Oben habe ich Ihnen das Erstellen eines benutzerdefinierten Taskleistenindikators für Ihre Aufgaben unter Linux vorgestellt. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
>>: Fehlerbehebung bei hohem Speicherverbrauch von NodeJs, tatsächlicher Kampfrekord
Vorgang 1: mit Rückgabewert: Prozedur löschen, fa...
Vorwort Wenn wir Anwendungen als Docker-Container...
Die Testumgebung ist mit MariaDB 5.7 eingerichtet...
Inhaltsverzeichnis 1. Lassen Sie uns zunächst erk...
Im Laufe der Arbeit werden Sie auf viele Fälle im...
Dieser Artikel enthält einfachen HTML- und Musikp...
Inhaltsverzeichnis Prototypen verstehen Prototypo...
1. Erstellen Sie eine Datenbank 2. Erstellen Sie ...
01 Das Konzept der parallelen Replikation In der ...
Dieses Artikelbeispiel zeigt die Implementierung ...
Mongodb verfügt über einen Befehl db.serverStatus...
1. Die erste Methode besteht darin, den Befehl un...
Inhaltsverzeichnis 1. Art von 2. Instanz von 3. K...
Laden Sie die neueste Version von MySQL für Ubunt...
Vorwort: Ich bin kürzlich auf das Problem der Ins...