2011-11-04 19 views
10
import tkinter 


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

私のquit機能をウィンドウを閉じるにはどうすればいいですか?Tkinterのウィンドウを閉じる機能

答えて

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

destroyの後にかっこを追加してメソッドを呼び出します。

あなたがcommand=self.root.destroyを使用するときは、Tkinter.Buttonは将来の呼び出しのための方法を保存したいので、あなたがボタンが作成されたときに、すぐにそれを呼び出すことがない、なしTkinter.Buttonに括弧をメソッドに渡します。

しかし、quitメソッドを定義するときは、メソッド本体が呼び出されているため、メソッド本体にself.root.destroy()を呼び出す必要があります。

+0

括弧の説明のために+1、私が探していたもの! – AndreasT

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

これは、終了ボタンをクリックする上で、私のTkinterのフレームを破壊するために私のために働きました。

関連する問題