Python 3 - GUI-Programmierung (Tkinter)
Python bietet verschiedene Optionen für die Entwicklung grafischer Benutzeroberflächen (GUIs). Die wichtigsten Funktionen sind unten aufgeführt.
Tkinter- Tkinter ist die Python-Schnittstelle zum mit Python gelieferten Tk-GUI-Toolkit. Wir würden diese Option in diesem Kapitel betrachten.
wxPython- Dies ist eine Open-Source-Python-Oberfläche für das wxWidgets-GUI-Toolkit. Ein vollständiges Tutorial zu WxPython finden Sie hier .
PyQt−Dies ist auch eine Python-Schnittstelle für eine beliebte plattformübergreifende Qt-GUI-Bibliothek. TutorialsPoint hat ein sehr gutes Tutorial auf PyQt hier .
JPython - JPython ist ein Python-Port für Java, über den Python-Skripte nahtlos auf die Java-Klassenbibliotheken auf dem lokalen Computer zugreifen können http://www.jython.org.
Es gibt viele andere Schnittstellen, die Sie im Internet finden können.
Tkinter-Programmierung
Tkinter ist die Standard-GUI-Bibliothek für Python. In Kombination mit Tkinter bietet Python eine schnelle und einfache Möglichkeit, GUI-Anwendungen zu erstellen. Tkinter bietet eine leistungsstarke objektorientierte Schnittstelle zum Tk-GUI-Toolkit.
Das Erstellen einer GUI-Anwendung mit Tkinter ist eine einfache Aufgabe. Sie müssen lediglich die folgenden Schritte ausführen:
Importieren Sie das Tkinter- Modul.
Erstellen Sie das Hauptfenster der GUI-Anwendung.
Fügen Sie der GUI-Anwendung eines oder mehrere der oben genannten Widgets hinzu.
Geben Sie die Hauptereignisschleife ein, um Maßnahmen gegen jedes vom Benutzer ausgelöste Ereignis zu ergreifen.
Beispiel
#!/usr/bin/python3
import tkinter # note that module name has changed from Tkinter in Python 2 to tkinter in Python 3
top = tkinter.Tk()
# Code to add widgets will go here...
top.mainloop()
Dies würde ein folgendes Fenster erstellen -
Tkinter Widgets
Tkinter bietet verschiedene Steuerelemente wie Schaltflächen, Beschriftungen und Textfelder, die in einer GUI-Anwendung verwendet werden. Diese Steuerelemente werden üblicherweise als Widgets bezeichnet.
Derzeit gibt es in Tkinter 15 Arten von Widgets. Wir präsentieren diese Widgets sowie eine kurze Beschreibung in der folgenden Tabelle -
Sr.Nr. | Betreiber & Beschreibung |
---|---|
1 |
Taste
Das Schaltflächen-Widget wird verwendet, um die Schaltflächen in Ihrer Anwendung anzuzeigen. |
2 |
Segeltuch
Das Canvas-Widget wird zum Zeichnen von Formen wie Linien, Ovalen, Polygonen und Rechtecken in Ihrer Anwendung verwendet. |
3 |
Checkbutton
Das Checkbutton-Widget wird verwendet, um eine Reihe von Optionen als Kontrollkästchen anzuzeigen. Der Benutzer kann mehrere Optionen gleichzeitig auswählen. |
4 |
Eintrag
Das Eingabe-Widget wird verwendet, um ein einzeiliges Textfeld zum Akzeptieren von Werten von einem Benutzer anzuzeigen. |
5 |
Rahmen
Das Frame-Widget wird als Container-Widget verwendet, um andere Widgets zu organisieren. |
6 |
Etikette
Das Label-Widget wird verwendet, um eine einzeilige Beschriftung für andere Widgets bereitzustellen. Es kann auch Bilder enthalten. |
7 |
Listbox
Das Listbox-Widget wird verwendet, um einem Benutzer eine Liste mit Optionen bereitzustellen. |
8 |
Menütaste
Das Menubutton-Widget wird verwendet, um Menüs in Ihrer Anwendung anzuzeigen. |
9 |
Speisekarte
Das Menü-Widget wird verwendet, um einem Benutzer verschiedene Befehle bereitzustellen. Diese Befehle sind in Menubutton enthalten. |
10 |
Botschaft
Das Nachrichten-Widget wird verwendet, um mehrzeilige Textfelder zum Akzeptieren von Werten von einem Benutzer anzuzeigen. |
11 |
Radio knopf
Das Radiobutton-Widget wird verwendet, um eine Reihe von Optionen als Optionsfelder anzuzeigen. Der Benutzer kann jeweils nur eine Option auswählen. |
12 |
Rahmen
Das Skalierungs-Widget wird verwendet, um ein Schieberegler-Widget bereitzustellen. |
13 |
Scrollleiste
Das Bildlaufleisten-Widget wird verwendet, um verschiedenen Widgets, z. B. Listenfeldern, Bildlauffunktionen hinzuzufügen. |
14 |
Text
Das Text-Widget wird verwendet, um Text in mehreren Zeilen anzuzeigen. |
15 |
Höchststufe
Das Toplevel-Widget wird verwendet, um einen separaten Fenstercontainer bereitzustellen. |
16 |
Spinbox
Das Spinbox-Widget ist eine Variante des Standard-Tkinter-Eintrags-Widgets, mit dem aus einer festen Anzahl von Werten ausgewählt werden kann. |
17 |
PanedWindow
Ein PanedWindow ist ein Container-Widget, das eine beliebige Anzahl von horizontal oder vertikal angeordneten Fenstern enthalten kann. |
18 |
LabelFrame
Ein Labelframe ist ein einfaches Container-Widget. Sein Hauptzweck ist es, als Abstandshalter oder Container für komplexe Fensterlayouts zu fungieren. |
19 |
tkMessageBox
Dieses Modul wird verwendet, um Meldungsfelder in Ihren Anwendungen anzuzeigen. |
Standardattribute
Schauen wir uns an, wie einige ihrer gemeinsamen Attribute wie Größen, Farben und Schriftarten angegeben werden.
Dimensions
Colors
Fonts
Anchors
Reliefstile
Bitmaps
Cursors
Geometriemanagement
Alle Tkinter-Widgets haben Zugriff auf die spezifischen Methoden zur Geometrieverwaltung, mit denen Widgets im gesamten übergeordneten Widgetbereich organisiert werden. Tkinter macht die folgenden Geometrie-Manager-Klassen verfügbar: Packen, Gitter und Ort.
Die pack () -Methode - Dieser Geometriemanager organisiert Widgets in Blöcken, bevor sie im übergeordneten Widget platziert werden.
Die Methode grid () - Dieser Geometriemanager organisiert Widgets in einer tabellenartigen Struktur im übergeordneten Widget.
Die place () -Methode - Dieser Geometrie-Manager organisiert Widgets, indem er sie an einer bestimmten Position im übergeordneten Widget platziert.