Comment fermer une fenêtre Tkinter avec un bouton

Jinku Hu 30 janvier 2023
  1. Méthode de la classe root.destroy() pour fermer la fenêtre Tkinter
  2. destroy() Méthode sans classe pour fermer la fenêtre Tkinter
  3. Associer directement la fonction root.destroy à l’attribut command du bouton
  4. root.quit pour fermer la fenêtre de Tkinter
Comment fermer une fenêtre Tkinter avec un bouton

Nous pouvons utiliser une fonction ou une commande attachée à un bouton dans l’interface graphique de Tkinter pour fermer la fenêtre de Tkinter lorsque l’utilisateur clique dessus.

Méthode de la classe root.destroy() pour fermer la fenêtre 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() détruit ou ferme la fenêtre.

Tkinter ferme une fenêtre avec un bouton

destroy() Méthode sans classe pour fermer la fenêtre 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()

Associer directement la fonction root.destroy à l’attribut command du bouton

Nous pourrions directement lier la fonction root.destroy à l’attribut button command sans définir la fonction supplémentaire 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 pour fermer la fenêtre de Tkinter

root.quit quitte non seulement la fenêtre de Tkinter mais plus précisément tout l’interpréteur Tcl.

Il peut être utilisé si votre application Tkinter n’est pas lancée depuis Python au repos. Il n’est pas recommandé d’utiliser root.quit si votre application Tkinter est appelée à partir de idle car quit ne tuera pas seulement votre application Tkinter mais aussi le idle car idle est aussi une application 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()
Auteur: 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

Article connexe - Tkinter Button