Wie man ein Tkinter-Fenster mit einer Schaltfläche schließt

Jinku Hu 30 Januar 2023 7 Januar 2020
  1. root.destroy() Klassenmethode zum Schließen des Tkinter-Fensters
  2. destroy() Nicht-Klassen-Methode zum Schließen des Tkinter-Fensters
  3. Ordnen Sie die Funktion root.destroy direkt dem Attribut command des Buttons zu
  4. root.quit zum Schließen des Tkinter-Fensters
Wie man ein Tkinter-Fenster mit einer Schaltfläche schließt

Wir können eine Funktion oder einen Befehl verwenden, der an eine Schaltfläche in der Tkinter-GUI angehängt ist, um das Tkinter-Fenster zu schließen, wenn der Benutzer darauf klickt.

root.destroy() Klassenmethode zum Schließen des Tkinter-Fensters

try:
    import Tkinter as tk
except:
    import tkinter as tk
    

class Test():
   def __init__(self):
       self.root = tk.Tk()
       self.root.geometry('100x50')
       button = tk.Button(self.root, 
                          text = 'Click and Quit',
                          command=self.quit)
       button.pack()
       self.root.mainloop()

   def quit(self):
       self.root.destroy()
        
app = Test()

destroy() zerstört oder schließt das Fenster.

Tkinter schließt ein Fenster mit einem Knopf

destroy() Nicht-Klassen-Methode zum Schließen des Tkinter-Fensters

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

def close_window():
    root.destroy()

button = tk.Button(text = "Click and Quit", command = close_window)
button.pack()

root.mainloop()

Ordnen Sie die Funktion root.destroy direkt dem Attribut command des Buttons zu

Wir könnten die root.destroy Funktion direkt an das command Attribut des Buttons binden, ohne die zusätzliche Funktion close_window zu definieren.

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

button = tk.Button(text = "Click and Quit", command = root.destroy)
button.pack()

root.mainloop()

root.quit zum Schließen des Tkinter-Fensters

root.quit beendet nicht nur das Tkinter-Fenster, sondern genauer gesagt den gesamten Tcl-Interpreter.

Es könnte verwendet werden, wenn Ihre Tkinter-Anwendung nicht von Python aus im Leerlauf initiiert wird. Es wird nicht empfohlen, root.quit zu benutzen, wenn Ihre Tkinter-Anwendung aus dem Leerlauf heraus aufgerufen wird, da quit nicht nur Ihre Tkinter-Anwendung, sondern auch den Leerlauf beendet, da der Leerlauf ebenfalls eine Tkinter-Anwendung ist.

try:
    import Tkinter as tk
except:
    import tkinter as tk

root = tk.Tk()
root.geometry("100x50")

button = tk.Button(text = "Click and Quit", command = root.quit)
button.pack()

root.mainloop()
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

Verwandter Artikel - Tkinter Button