Comment pourrais-je faire détruire() la méthode en tkinter travailler avec mon code?
from tkinter import *
class GameBoard(Frame):
def __init__(self):
Frame.__init__(self)
self.master.title("test")
self.grid()
#button frame
self.__buttonPane = Frame(self)
self.__buttonPane.grid()
#buttons
self.__buttonA1 = Button(self.__buttonPane,text = "A1",command = self._close)
self.__buttonA1.grid()
def _close(self):
GameBoard().destroy()
def main():
GameBoard().mainloop()
main()
Comment pourrais-je faire de ma fonction pour près de leur travail?
OriginalL'auteur Victor Oza | 2012-11-30
Vous devez vous connecter pour publier un commentaire.
crée une nouvelle instance de
GameBoard
. Donc:crée un nouveau instance et les appels
destroy()
sur elle, qui n'a pas d'effet sur l'instance existante.Vous souhaitez accéder à l'instance en cours dans votre
_close()
méthode qui est fait parself
:Toutefois, cela ne détruit le cadre (et de son enfant de windows, comme le bouton, pas de la fenêtre de premier niveau (master).
De fermer complètement l'INTERFACE utilisateur, vous pouvez l'appeler
self.master.destroy()
ou tout simplementself.quit()
:OriginalL'auteur Anonymous Coward
auto.maître.destroy() va fermer à la fois le parent et l'enfant (voir I. E. par exemple). auto.détruire fermera le processus de l'enfant. Je sais que c'est un vieux post, mais j'ai pensé que cette information pourrait encore être applicable à quelqu'un.
I. E.
OriginalL'auteur BJM