Sie sollten verwenden destroy()
, um ein tkinter-Fenster zu schließen.
from Tkinter import *
root = Tk()
Button(root, text="Quit", command=root.destroy).pack()
root.mainloop()
Erläuterung:
root.quit()
Die obige Zeile umgeht nur das, root.mainloop()
dh root.mainloop()
wird weiterhin im Hintergrund ausgeführt, wenn der quit()
Befehl ausgeführt wird.
root.destroy()
Während destroy()
Befehl verschwinden, root.mainloop()
dh root.mainloop()
stoppt.
Wenn Sie also nur das Programm beenden möchten, sollten root.destroy()
Sie es so verwenden, wie es wird mainloop()
.
Aber wenn Sie eine Endlosschleife ausführen möchten und Ihr Tk-Fenster nicht zerstören möchten und Code nach root.mainloop()
Zeile ausführen möchten, sollten Sie verwenden root.quit()
. Ex:
from Tkinter import *
def quit():
global root
root.quit()
root = Tk()
while True:
Button(root, text="Quit", command=quit).pack()
root.mainloop()