tkinter                
            関数の遅延
        
        
            
    サーチ…
構文
- widget.after(delay_ms、コールバック、* args)
 
パラメーター
| パラメータ | 説明 | 
|---|---|
| delay_ms | 関数callbackへの呼び出しが遅れた時間(ミリ秒)  | 
| 折り返し電話 | 与えられたdelay_ms後に呼び出される関数。このパラメータが指定されていない場合、 .afterと同様の動作をしtime.sleep (ミリ秒単位)  | 
備考
構文は、 .afterが以前に作成されたメソッドによって受け入れられたwidget想定していwidget (つまり、 widget=tk.Label(parent) )。 
.after()
 .after(delay, callback=None)は、すべてのtkinterウィジェットに対して定義されたメソッドです。このメソッドは、ミリ秒単位で指定されたdelay後に関数callback呼び出しcallback 。関数が与えられていなければ、それはtime.sleepと似たような働きをしtime.sleep (ただし秒数ではなくミリ秒単位) 
 after簡単なタイマーを作成する方法の例を次に示します。 
# import tkinter
try:
    import tkinter as tk
except ImportError:
    import Tkinter as tk
class Timer:
    def __init__(self, parent):
        # variable storing time
        self.seconds = 0
        # label displaying time
        self.label = tk.Label(parent, text="0 s", font="Arial 30", width=10)
        self.label.pack()
        # start the timer
        self.label.after(1000, self.refresh_label)
    def refresh_label(self):
        """ refresh the content of the label every second """
        # increment the time
        self.seconds += 1
        # display the new time
        self.label.configure(text="%i s" % self.seconds)
        # request tkinter to call self.refresh after 1s (the delay is given in ms)
        self.label.after(1000, self.refresh_label)
if __name__ == "__main__":
    root = tk.Tk()
    timer = Timer(root)
    root.mainloop()
    
    
    
    
    Modified text is an extract of the original Stack Overflow Documentation
        ライセンスを受けた CC BY-SA 3.0
        所属していない Stack Overflow