Python Tkinter-Beispiele

Python Tkinter Beispiele



Python ist eine vielseitige Programmiersprache, mit der sich verschiedene Arten von Anwendungen implementieren lassen. Es verfügt über viele Arten von Modulen zum Erstellen von GUI-basierten (Graphical User Interface) Anwendungen. Python tkinter ist einer von ihnen. Jede Desktop-Anwendung kann mit dem tkinter-Modul einfach implementiert werden. Es ist besser, wenn Sie über Grundkenntnisse der Python-Programmierung verfügen, um die Verwendung des Python-tkinter-Moduls zu erlernen. In diesem Tutorial werden verschiedene Verwendungsmöglichkeiten des Python-tkinter-Moduls zum Erstellen der GUI-Anwendungen gezeigt.

Installieren Sie das Tkinter-Modul

Das tkinter-Modul ist standardmäßig nicht auf Python installiert. Sie müssen also den folgenden Befehl ausführen, um das tkinter-Modul in der Python 3+-Version zu installieren:







$ Sudo geeignet Installieren python3-tk



Verschiedene Tkinter-Widgets

Das tkinter-Modul enthält verschiedene Widgets für verschiedene Zwecke.







Widget Name Zweck
Etikett Es wird verwendet, um dem Benutzer die Hilfemeldung anzuzeigen.
Taste Es wird verwendet, um der Anwendung verschiedene Schaltflächen hinzuzufügen.
Rahmen Es funktioniert wie ein Widget-Container, der verschiedene Arten von Widgets enthält, um ein organisiertes Formular zu entwerfen.
Eintrag Es wird verwendet, um vom Benutzer einen einzeiligen Text zu erhalten.
Checkbutton Es wird verwendet, um die Kontrollkästchenschaltflächen hinzuzufügen, um mehrere Eingaben des Benutzers aus mehreren Optionen entgegenzunehmen.
Radio knopf Es wird verwendet, um die Optionsfelder hinzuzufügen, um eine einzelne Eingabe des Benutzers aus mehreren Optionen zu übernehmen.
Combobox-Schaltfläche Es wird verwendet, um eine Dropdown-Liste hinzuzufügen, um eine einzelne Eingabe des Benutzers aus mehreren Optionen zu übernehmen.
ListBox Es wird verwendet, um ein Listenfeld hinzuzufügen, um mehrere Eingaben des Benutzers aus mehreren Optionen zu übernehmen.
Text Es wird verwendet, um vom Benutzer einen mehrzeiligen Text entgegenzunehmen.
Nachricht Es wird verwendet, um dem Benutzer das Nachrichtenfenster anzuzeigen.
Scrollleiste Es wird verwendet, um dem Fenster eine Bildlaufleiste hinzuzufügen, um das Fenster nach oben und unten zu scrollen.
Menütaste Es wird verwendet, um dem Benutzer das Menü anzuzeigen.
Speisekarte Es wird verwendet, um dem Benutzer die Menüpunkte anzuzeigen.
PanedWindow Es funktioniert wie ein Widget-Container, der die horizontalen und vertikalen Bereiche enthält.
Tabs Es wird verwendet, um der Anwendung ein Registerkartenfenster hinzuzufügen.

Verschiedene Tkinter-Beispiele

Die Verwendung einiger gängiger Tkinter-Widgets wird in den folgenden Beispielen gezeigt.

Beispiel 1: Erstellen Sie eine einfache GUI-Anwendung

Erstellen Sie eine Python-Datei mit folgendem Inhalt, die in der Mitte des Bildschirms ein Dialogfeld mit einem Titel und der jeweiligen Höhe und Breite anzeigt:



#Notwendiges Modul importieren
aus dem Tkinter-Import *

#Objekt für das Fenster erstellen
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „Tkinter-Modul lernen“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '300x150' )

#Stellen Sie die Anzeigeposition des Fensters zentral ein
tkobj.eval ( 'tk::PlaceWindow . Center' )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint die folgende Ausgabe. Ein Dialogfeld mit dem Titel „Learn tkinter module“ wird angezeigt:

Beispiel 2: Verwendung von Label und Button

Erstellen Sie eine Python-Datei mit dem folgenden Skript, das ein Fenster mit einer Beschriftung und einem Dialogfeld anzeigt:

#Notwendiges Modul importieren
aus dem Tkinter-Import *

#Erstellen Sie ein Objekt für das Fenster
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „Tkinter-Modul lernen“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '400x150' )

#Labelobjekt definieren
lbl = Etikett ( tkobj, Text = „Es ist ein einfaches Fenster“ )
#Beschriftung zum Fenster hinzufügen
lbl.pack ( ipadx = 30 , iPads = zwanzig )

#Schaltflächenobjekt definieren
btn = Schaltfläche ( tkobj, Text = 'Klick mich' )
#Schaltfläche mit der Position zum Fenster hinzufügen
btn.pack ( ipadx = 30 , iPads = 10 )

#Stellen Sie die Anzeigeposition des Fensters zentral ein
tkobj.eval ( 'tk::PlaceWindow . Center' )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint in der Mitte des Bildschirms ein Fenster mit einer Beschriftung und einer Schaltfläche.

Beispiel 3: Legen Sie die Schriftfarbe und die Hintergrundfarbe fest

Erstellen Sie mit dem folgenden Skript eine Python-Datei, die ein Fenster mit einer Beschriftung und einer farbigen Schaltfläche anzeigt. Hier wird das Hintergrundattribut verwendet, um die Hintergrundfarbe der Schaltfläche festzulegen, und das Vordergrundattribut wird verwendet, um die Schriftfarbe der Schaltfläche festzulegen:

#Notwendiges Modul importieren
aus dem Tkinter-Import *

#Erstellen Sie ein Objekt für das Fenster
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „Tkinter-Modul lernen“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '400x150' )

#Labelobjekt definieren
lbl = Etikett ( tkobj, Text = „Hintergrund- und Vordergrundfarbe festlegen“ )
#Beschriftung zum Fenster hinzufügen
lbl.pack ( ipadx = 30 , iPads = zwanzig )

#Schaltflächenobjekt mit Hintergrund- und Vordergrundfarbe definieren
btn = Schaltfläche ( tkobj, Text = 'Klick mich' , Hintergrund = 'Blau' , Vordergrund = 'Rot' )
#Schaltfläche mit der Position zum Fenster hinzufügen
btn.pack ( ipadx = 30 , iPads = 8 )

#Stellen Sie die Anzeigeposition des Fensters zentral ein
tkobj.eval ( 'tk::PlaceWindow . Center' )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint folgendes Fenster:

Beispiel 4: Verwendung von Frame

Im folgenden Python-Skript werden eine Beschriftung und zwei Schaltflächen innerhalb eines Frame-Widgets angezeigt. Erstellen Sie eine Python-Datei mit dem Skript, um die Ausgabe zu überprüfen:

#Notwendiges Modul importieren
aus dem Tkinter-Import *

#Erstellen Sie ein Objekt für das Fenster
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „tkinter-Modul“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '250x100' )

#Rahmenobjekte definieren
frm = Rahmen ( tkobj )
ab Packung ( )
lframe = Rahmen ( tkobj )
lframe.pack ( Seite =LINKS )
rframe = Rahmen ( tkobj )
rframe.pack ( Seite =RECHT )

#Beschriftung innerhalb des Rahmens definieren
lbl = Etikett ( von, Text = „Verwendung des Rahmens“ , fg = 'Blau' )
lbl.pack ( )

#Definieren Sie Schaltflächen innerhalb des Rahmens
btn1 = Schaltfläche ( lframe, Text = „“ , fg = 'Schwarz' , bg = 'Weiß' )
btn2.pack ( Seite =RECHT )

#Stellen Sie die Anzeigeposition des Fensters zentral ein
tkobj.eval ( 'tk::PlaceWindow . Center' )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint folgende Ausgabe:

Beispiel 5: Behandeln Sie das Schaltflächenereignis

Die Verwendung des Meldungsfelds wird im folgenden Skript gezeigt. Das Meldungsfeld wird angezeigt, wenn auf eine Schaltfläche geklickt wird:

#Notwendige Module importieren
aus dem Tkinter-Import *
aus der Tkinter-Import-Nachrichtenbox

#Erstellen Sie ein Objekt für das Fenster
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „Tkinter-Modul lernen“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '400x150' )

#Definieren Sie eine Funktion zum Anzeigen eines Meldungsfelds
def-Anzeige ( ) :
messagebox.showinfo ( 'Information' , „Schaltfläche wurde angeklickt.“ )

#Erstellen Sie Etikettentext mit Schriftfarbe, -stil und -position
Etikett ( tkobj, Text = „Desktop-Anwendung mit tkinter.“ , fg = 'Grün' ) .Pack ( Paddy = 25 )

#Erstellen Sie eine Schaltfläche mit einem Schaltflächenhandler
Taste ( tkobj, Text = 'Zeige Nachricht' , Befehl =Anzeige ) .Pack ( )

#Stellen Sie die Anzeigeposition des Fensters zentral ein
tkobj.eval ( 'tk::PlaceWindow . Center' )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint folgendes Fenster:

Nach dem Drücken der Taste erscheint folgendes Meldungsfeld:

Beispiel 6: Nehmen Sie eine Eingabe vom Benutzer entgegen

Im tkinter-Modul stehen mehrere Widgets zur Verfügung, um Eingaben des Benutzers entgegenzunehmen. Die Verwendungsmöglichkeiten der gängigsten Widgets werden im folgenden Skript dargestellt. Erstellen Sie eine Python-Datei mit dem folgenden Code, um die Ausgabe zu überprüfen:

#Notwendige Module importieren
aus dem Tkinter-Import *
aus tkinter.ttk Combobox importieren
von tkinter import ttk
tkinter importieren als Tk
aus der Tkinter-Import-Nachrichtenbox

#Tkinter-Objekt erstellen
tkobj = Tk ( )

#Legen Sie den Titel des Fensters fest
tkobj.title ( „Benutzerinformationsformular“ )

#Stellen Sie die Höhe und Breite des Fensters ein
tkobj.geometry ( '550x320' )

#Definieren Sie eine Funktion zum Anzeigen der Formularwerte
def display_values ( ) :
#Einzeiligen Text lesen
Name = 'Name : ' + name_val.get ( ) + ' \N '
#Lesen Sie den ausgewählten Optionsfeldwert
Wenn Geschlecht.get ( ) == 1 :
g = 'Männlich'
anders:
g = 'Weiblich'
g = 'Geschlecht : ' + g + ' \N '

#Lesen Sie die ausgewählten Kontrollkästchenwerte
Spiel = „“
Wenn g1.get ( ) == 1 :
Spiel = 'Kricket'
Wenn g2.get ( ) == 1 :
Wenn Spiel ! = „“ :
Spiel += ',' + 'Fußball'
anders:
Spiel = 'Fußball'
Wenn g3.get ( ) == 1 :
Wenn Spiel ! = „“ :
Spiel += ',' + 'Basketball'
anders:
Spiel = 'Basketball'
Spiel = 'Spiel : ' + Spiel + ' \N '

#Lesen Sie die Combobox-Werte
Land = 'Land : ' + CountryVal.get ( ) + ' \N '
#Lesen Sie den mehrzeiligen Text
Adresse = 'Adresse : ' + Adr.get ( „1,0“ , 'Ende' ) + ' \N '
#Alle von den Feldern übernommenen Werte zusammenführen
form_values ​​= Name + g + Spiel + Land + Adresse
#Zeigen Sie die Werte im Meldungsfeld an
messagebox.showinfo ( „Benutzerinformationsdetails“ , form_values )


#Erstellen Sie eine Beschriftung und das Namensfeld
Etikett ( tkobj, Text = 'Name : ' ) .Ort ( X = 100 , Und = zwanzig )
name_val = StringVar ( )
ttk.Eintrag ( tkobj, Textvariable =Name_Wert ) .Pack ( Padx = 220 , Paddy = zwanzig )

#Erstellen Sie eine Beschriftung und das Optionsfeld
Etikett ( tkobj, Text = 'Geschlecht : ' ) .Ort ( X = 100 , Und = 60 )
Geschlecht = IntVar ( )
Geschlecht.set ( 1 )
Radio knopf ( tkobj, Text = 'Männlich' , Variable =Geschlecht, Wert = 1 ) .Ort ( X = 210 , Und = 60 )
Radio knopf ( tkobj, Text = 'Weiblich' , Variable =Geschlecht, Wert = 2 ) .Ort ( X = 290 , Und = 60 )

#Erstellen Sie eine Beschriftung und eine Kontrollkästchenschaltfläche
Etikett ( tkobj, Text = 'Lieblingsspiel : ' ) .Ort ( X = 100 , Und = 100 )
g1 = IntVar ( )
g2 = IntVar ( )
g3 = IntVar ( )
Checkbutton ( tkobj, Text = 'Kricket' , Variable =g1 ) .Ort ( X = 210 , Und = 100 )
Checkbutton ( tkobj, Text = 'Fußball' , Variable =g2 ) .Ort ( X = 290 , Und = 100 )
Checkbutton ( tkobj, Text = 'Basketball' , Variable =g3 ) .Ort ( X = 380 , Und = 100 )

#Tupelwerte definieren
Daten = ( 'Bangladesch' , 'Japan' , 'USA' )
#Label und Combobox erstellen
Etikett ( tkobj, Text = 'Land : ' ) .Ort ( X = 100 , Und = 140 )
CountryVal = StringVar ( )
Kombinationsfeld ( tkobj, Werte =Daten, Textvariable =countryVal ) .Ort ( X = 220 , Und = 140 )

#Beschriftung und Textfeld erstellen
Etikett ( tkobj, Text = 'Adresse : ' ) .Ort ( X = 100 , Und = 180 )
addr = ( tk.Text ( tkobj, Höhe = 3 , Breite = zwanzig ) )
Adr.Ort ( X = 220 , Und = 180 )

#Erstellen Sie eine Schaltfläche mit einem Schaltflächenhandler
Taste ( tkobj, Text = 'Einreichen' , Befehl =Anzeigewerte ) .Ort ( X = 250 , Und = 250 )

#Führen Sie den Tkinter aus
tkobj.mainloop ( )

Ausgabe:

Nach der Ausführung des Skripts erscheint folgendes Fenster:

Füllen Sie die Felder des Formulars aus und klicken Sie auf die Schaltfläche „Senden“.

Das folgende Meldungsfeld mit den übermittelten Werten wird angezeigt:

Abschluss

Die Methoden zur Verwendung des Python-tkinter-Moduls zum Erstellen der GUI-Anwendungen werden in diesem Tutorial anhand mehrerer Beispiele gezeigt.