Erste Schritte mit grafischen Benutzeroberflächen in Python

Inhaltsverzeichnis

In diesem Tutorial werden wir setzen Beispiele für die Implementierung von GUI-Anwendungen in Python, es gibt viele Module, um mit einer grafischen Oberfläche zu arbeiten, hier haben wir uns entschieden Tkinter, da es mit Python vorinstalliert ist und uns helfen wird, zu sehen, wie wir auf diese Weise arbeiten, obwohl wir am Ende ein kleines Beispiel dafür sehen werden PyQt.

Wir können prüfen, ob Tkinter das Modul wird korrekt installiert mit:

 python -m tkinter
NotizIn Python 2 wäre es das erste großgeschriebene t: Tkinter, da es in Python 3 umbenannt wurde.

Wenn es richtig installiert ist, sehen wir, dass ein Fenster wie das folgende angezeigt wird:

Wenn kein Fehler angezeigt wird, zeigt dies an, dass dieses Modul nicht gefunden werden kann:

So installieren Sie das Modul in Python 3 innerhalb von Debian-Distributionen:

 sudo apt-get install python3-tk
Für andere Versionen siehe den folgenden Link. Das Tutorial konzentriert sich darauf, einen ersten Eindruck über die Arbeit mit der GUI in Python zu vermitteln. Wenn Sie neu in diesem Thema sind, wird es Ihnen helfen, wenn Sie nach fortgeschrittenen Themen suchen, ist dies nicht das richtige Tutorial.

NotizHier werden wir mit Python 3 arbeiten, wir importieren die Bibliothek wie folgt:

 tkinter importieren
In Python 2 müssen Sie es jedoch wie folgt importieren, wir haben bereits darüber gesprochen, dass es umbenannt wird:
 Tkinter importieren

Wir werden das Tutorial Beispiel für Beispiel beginnen, wir werden mit dem Einfachsten beginnen und es am Ende komplizieren.

Beispiel 1
Wir erstellen ein einfaches Fenster dafür schreiben wir den folgenden Code:

 import tkinter window = tkinter.Tk () window = tkinter.mainloop ()
Mit der ersten Zeile importieren wir das erforderliche Modul, die nächste erstellt das Hauptfenster und wenn wir die letzte Anweisung entfernen, wird das Fenster beim Ausführen des Codes nicht angezeigt. Die Ausgabe des Beispiels:

Dieses Beispiel war sehr lang, 3 Zeilen … Kommen wir zum nächsten.

Beispiel 2
In diesem Beispiel, das nicht viel länger ist als das vorherige, werden wir das Fenster wie in Beispiel 1 erstellen, aber wir werden es ein wenig konfigurieren, wir werden Farbe, Größe und Titel ändern.

 import tkinter as tk window = tk.Tk () window.config (bg = "blue") window.geometry ("400x300") window.title ("Example2") window.mainloop ()
Die erste Zeile importiert immer noch das tkinter-Modul, aber wir geben ihm einen Alias, damit wir im Code ein kürzeres Wort verwenden können. Wir erstellen das Fenster wie im vorherigen Beispiel. Und in den nächsten 3 Zeilen werden Farbe, Größe und Titel der Reihe nach konfiguriert. Die letzte Zeile kennen wir bereits. Die Ausgabe des Beispiels ist wie folgt:

Bisher war alles sehr einfach, fahren wir mit weiteren Beispielen fort.

Beispiel 3
Jetzt erstellen wir eine Schaltfläche im Hauptfenster, die uns auch nicht viel verkompliziert, sehen wir uns den Code an:

 tkinter als tk importieren window = tk.Tk () window.geometry ("200x150") button = tk.Button (window, text = "Testing") button.grid (row = 1, column = 1) window.mainloop ()
Die einzigen Zeilen, die einer Erklärung bedürfen, sind:
 button = tk.Button (Fenster, Text = "Testen") button.grid (Zeile = 1, Spalte = 1)
Die erste erstellt eine Schaltfläche mit dem Namen Testing (Taste), und wir weisen es zu Fenster, die die Variable unseres Hauptfensters ist. Die zweite platziert die Schaltfläche in Zeile und Spalte 1. Die Ausführung zeigt uns Folgendes:

Die Schaltfläche wird einfach angezeigt, sie funktioniert nicht, da sie keine Ereignisse bedient, wir werden dies im folgenden Beispiel tun.

Beispiel 4
Jetzt werden wir an einer Veranstaltung teilnehmen, um ein zweites Fenster zu öffnen, das nicht das Hauptfenster sein wird. Sehen wir uns den Code an:

 import tkinter as tk def open(): window2 = tk.Toplevel (window) window = tk.Tk () window.geometry ("200x150") button = tk.Button (window, text = "Open", command = open) button.grid (Zeile = 1, Spalte = 1) window.mainloop () 
Wir werden die neuen Zeilen sehen, die Open-Funktion hat die folgende Anweisung, die ein "Kind" -Fenster des Hauptfensters erstellt.
 window2 = tk.Toplevel (Fenster)
Und der Button hat eine kleine Änderung, beachte Befehl, ist eine Funktion auszuführen, in diesem Fall die Funktion aufzurufen offen:
 button = tk.Button (Fenster, Text = "Öffnen", Befehl = öffnen)
Gehen wir zu einem Beispiel mit einer Klasse.

Beispiel 5
Dies ist das letzte Beispiel für tkinter, und es wird das längste sein. Wir werden eine Klasse erstellen, um etwas anderes zu tun. Was wir tun werden, ist ein kleines Fenster, dessen Größe nicht geändert werden kann, es wird eine Textbeschriftung und eine Schaltfläche haben. Jedes Mal, wenn wir die Schaltfläche drücken, wird die Zahl erhöht. Kommen wir zum Code:

 import tkinter als tk class Application (): counter = 1 def __init __ (self): self.window = tk.Tk () self.window.geometry ("300x60") self.window.title ("Example 5") self . window.resizable (width = False, height = False) self.createButton () self.createLabel () self.window.mainloop () def createButton (self): self.button = tk.Button (self.window, text = " Erhöhen ", command = self.increase) self.button.pack () def createLabel (self): self.tag = tk.Label (self.window, text =" 0 ", fg =" blue ") self.tag .pack (pady = 10) def erhöhen (self): self.tag ["text"] = self.counter self.counter + = 1 app = Application () 
In Funktion __drin__ wir werden das Fenster erstellen und konfigurieren, zusätzlich zum Aufrufen der Funktionen createButton Ja createLabel für uns, diese Elemente zu glauben. Wenn wir die vorherigen Beispiele gesehen haben, sollte dieses keine Komplikationen oder Zweifel hervorrufen. Beim Starten des Programms haben wir das Fenster mit der Nummer bei 0:

Wenn wir auf die Schaltfläche klicken, erhöht sich die Zahl, zum Beispiel nach 25-maligem Klicken haben wir Folgendes:

In diesem Tutorial haben wir die Grundlagen des tkinter-Moduls gesehen, Sie können viele weitere Dinge erstellen. Wenn Sie sich hier vertiefen möchten, haben Sie den Link zur offiziellen Python-Seite, auf der über tkinter gesprochen wird.

Sie haben andere Bibliotheken in Python, mit denen Sie wie eingangs gesagt grafische Oberflächen programmieren können, einige davon sind:

  • PyGTK
  • wxPython
  • PyQT

Damit Sie tkinter ein wenig mit einem anderen Modul vergleichen können, geben wir ein Beispiel für PyQt.

Beispiel mit PyQT
Um dieses Beispiel zu starten Sie müssen die Bibliothek installieren, können Sie den oben angegebenen Link besuchen. Wir erstellen ein Fenster mit einer Größe von 275x200 und mit dem Titel Beispiel PyQt4. Es erscheint auch in Position 300x300

 import sys from PyQt4 import QtGui application = QtGui.QApplication (sys.argv) window = QtGui.QWidget () window.resize (275, 200) window.move (300, 300) window.setWindowTitle ('PyQt4 Example') window. show () sys.exit (application.exec_ ()) 
Wenn wir den Code ausführen, erhalten wir die folgende Ausgabe:

Nichts kompliziertes, wie es im gesamten Tutorial beobachtet wurde, könnten wir weiterhin Beispiele einfügen, da es viel zu berühren gibt, aber mit einer Einführung bereitet es Sie bereits darauf vor, das Erstellen eigener Beispiele zu üben, andere Elemente hinzuzufügen, wie Listen, Textfelder, in die geschrieben werden soll usw.

Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave