2017-02-24 12 views
1

私はこのプログラムをtkinterウィンドウ内で実行しています。アイデアは、ユーザーがポルグラムの使用を終了すると、そのセッションのスコア/情報が保存されるため、スコアを保存するのは、ウィンドウを閉じた後でなければならないということです。Tkinterウィンドウを閉じた後に何かをする方法はありますか?

ユーザーがウィンドウを閉じた後にのみプロセスが実行されるように、ユーザーが閉じるボタン(ウィンドウ内ウィジェットではなく)を押したときにプログラムに通知できるものがあるかどうかは疑問です。

答えて

3

mainloop関数は、ルートウィンドウが閉じた後で終了するので、その後にコードを置くことができます。

from Tkinter import * 

root = Tk() 
root.mainloop() 
print("This message should appear after the window closes.") 

私はあなたにもWM_DELETE_WINDOWイベントをキャッチするためにプロトコルハンドラを登録することができたとし、それは、不必要な合併症のように思えます。

from Tkinter import * 

def x_button_pressed(): 
    print("This message should appear after the window closes.") 
    root.destroy() 

root = Tk() 
root.protocol("WM_DELETE_WINDOW", x_button_pressed) 
root.mainloop() 
関連する問題