Ein Programm wird erst über den gewünschten Code zur Bearbeitung einer Anfrage / eines Befehls und dann ggf noch mit einer grafischen Oberfläche versorgt.
Es gibt mehrere Möglichkeiten zum Entwurf einer grafischen Benutzeroberfläche (GUI) mit Python:
- Tkinter: Dies ist das Standard-GUI-Toolkit für Python und in der Standardbibliothek enthalten. Es eignet sich gut für einfache GUIs und schnelles Prototyping.
Tkinter ist eine Sprachanbindung für das GUI-Toolkit Tk für die Programmiersprache Python. Der Name steht als Abkürzung für Tk interface. Tkinter war das erste GUI-Toolkit für Python, weshalb es inzwischen auf Mac OS und Windows auch zum Lieferumfang von Python gehört. - PyQt: Eine beliebte plattformübergreifende Python-Bindung für das Qt-Framework, die leistungsstarke und moderne GUIs ermöglicht[1][2].
- wxPython: Ein Open-Source-Wrapper für die wxWidgets-Bibliothek, der plattformübergreifende Entwicklung unterstützt.
- Kivy: Ein modernes Framework, das sich besonders für die Entwicklung von Multi-Touch-Anwendungen eignet.
- PyGObject (früher PyGTK): Ein Modul zur Erstellung fortgeschrittener GUIs, das jetzt PyGTK ersetzt.
- DearPyGui: Ein GPU-beschleunigtes Framework, das sich für hochleistungsfähige Anwendungen eignet.
- PySimpleGUI: Ein Wrapper-Paket, das mehrere GUI-Frameworks unterstützt und die Entwicklung vereinfacht.
Jedes dieser Frameworks hat seine eigenen Stärken und eignet sich für unterschiedliche Anwendungsfälle. Die Wahl hängt von Faktoren wie Komplexität der Anwendung, gewünschter Plattformunterstützung und persönlichen Präferenzen ab.
Das Modul tkinter.ttk bietet Zugriff auf den Tk-Themen-Widgetsatz, der in Tk 8.5 eingeführt wurde. Es bietet zusätzliche Vorteile, darunter die geglättete Schriftdarstellung unter X11 und Fenstertransparenz (erfordert einen Kompositionsfenstermanager unter X11). Die Grundidee von tkinter.ttk besteht darin, den Code, der das Verhalten eines Widgets implementiert, so weit wie möglich von dem Code zu trennen, der sein Erscheinungsbild implementiert.
Man kann ttk und tk Widgets in derselben Anwendung abwechselnd verwenden. Dies bietet Entwicklern die Flexibilität, die Vorteile beider Widget-Sets zu nutzen:
- Kombinierte Nutzung: Sie können ttk Widgets für ein moderneres Aussehen verwenden, während Sie gleichzeitig auf die einfachere Konfigurierbarkeit von tk Widgets zurückgreifen können.
- Schrittweise Migration: Es ermöglicht eine graduelle Umstellung von tk auf ttk Widgets, ohne den gesamten Code umschreiben zu müssen.
- Funktionale Ergänzung: Einige Widgets wie Combobox, Notebook, Treeview, Progressbar, Separator und Sizegrip sind nur als ttk-Widgets verfügbar, können aber problemlos mit tk-Widgets kombiniert werden.
- Anpassungsfähigkeit: Sie können die bessere plattformübergreifende Darstellung von ttk-Widgets nutzen, während Sie für bestimmte Elemente die direktere Anpassbarkeit von tk-Widgets beibehalten
Es ist jedoch wichtig zu beachten, dass die Verwendung von Styles für ttk-Widgets und die direkte Konfiguration für tk-Widgets unterschiedlich gehandhabt werden. Dies kann zu einem etwas komplexeren Code führen, bietet aber auch mehr Flexibilität in der Gestaltung der Benutzero
Mit PyAutoGUI können Ihre Python-Skripte Maus und Tastatur steuern, um Interaktionen mit anderen Anwendungen zu automatisieren. Die API ist auf Einfachheit ausgelegt. PyAutoGUI funktioniert unter Windows, macOS und Linux und läuft unter Python 2 und 3.