Functie om het venster in Tkinter te sluiten

Hoe kan ik mijn functie quitinstellen om het venster te sluiten?


Antwoord 1, autoriteit 100%

def quit(self):
    self.root.destroy()

Voeg haakjes toe na destroyom de methode aan te roepen.

Als je command=self.root.destroygebruikt, geef je de methode door aan Tkinter.Buttonzonderde haakjes omdat je Tkinter.Buttonom de methode op te slaan voor toekomstig bellen, niet om deze meteen aan te roepen wanneer de knop wordt gemaakt.

Maar wanneer u de methode quitdefinieert, moet u self.root.destroy()aanroepen in de hoofdtekst van de methode, omdat de methode dan is aangeroepen .


Antwoord 2, autoriteit 6%

class App():
    def __init__(self):
        self.root = Tkinter.Tk()
        button = Tkinter.Button(self.root, text = 'root quit', command=self.quit)
        button.pack()
        self.root.mainloop()
    def quit(self):
        self.root.destroy()
app = App()

Antwoord 3, autoriteit 4%

def exit(self):
    self.frame.destroy()
exit_btn=Button(self.frame,text='Exit',command=self.exit,activebackground='grey',activeforeground='#AB78F1',bg='#58F0AB',highlightcolor='red',padx='10px',pady='3px')
exit_btn.place(relx=0.45,rely=0.35)

Dit werkte voor mij om mijn Tkinter-frame te vernietigen door op de exit-knop te klikken.


Antwoord 4

class App():
    def __init__(self):
        self.root = Tkinter.Tk()
        button = Tkinter.Button(self.root, text = 'root quit', command=self.quit)
        button.pack()
        self.root.mainloop()
    def quit(self):
        self.root.destroy()
app = App()

Other episodes