Come chiudere una finestra Tkinter con un pulsante

Jinku Hu 30 gennaio 2023
  1. root.destroy() Metodo della classe per chiudere la finestra di Tkinter
  2. destroy() Metodo non di classe per chiudere la finestra di Tkinter
  3. Associare la funzione root.destroy all’attributo command del pulsante direttamente
  4. root.quit per chiudere la finestra di Tkinter
Come chiudere una finestra Tkinter con un pulsante

Possiamo usare una funzione o un comando collegato ad un pulsante nell’interfaccia grafica di Tkinter per chiudere la finestra di Tkinter quando l’utente fa clic su di essa.

root.destroy() Metodo della classe per chiudere la finestra di Tkinter

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() distrugge o chiude la finestra.

Tkinter chiude una finestra con un pulsante

destroy() Metodo non di classe per chiudere la finestra di Tkinter

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()

Associare la funzione root.destroy all’attributo command del pulsante direttamente

Potremmo legare direttamente la funzione root.destroy all’attributo command del pulsante senza definire più la funzione extra close_window.

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 per chiudere la finestra di Tkinter

root.quit esce non solo dalla Finestra Tkinter, ma più precisamente dall’intero interprete di Tcl.

Potrebbe essere usato se la vostra applicazione Tkinter non viene avviata da Python idle. Non è raccomandato l’uso di root.quit se la vostra applicazione Tkinter viene chiamata da idle perché quit non solo ucciderà la vostra applicazione Tkinter ma anche l’idle perché idle è anche un’applicazione Tkinter.

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()
Autore: 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 Facebook

Articolo correlato - Tkinter Button