イベント駆動型プログラミングでは、アプリケーションは指定された時間に実行される関数をスケジュールできます。 Tkinter ウィジェットには、特定のミリ秒数が経過した後に関数を実行するために使用できる after メソッドがあります。
四角形を 3 回点滅させるには、四角形の塗りつぶしの色を変更する関数を作成する必要があります。 1 秒間隔で 3 回実行するようにスケジュールします。その方法は次のとおりです:
import tkinter as tk from time import sleep def blink(rect, canvas): for i in range(3): canvas.itemconfigure(rect, fill="red") sleep(1) canvas.itemconfigure(rect, fill="white") sleep(1) root = tk.Tk() fr = tk.Frame(root) fr.pack() canv = tk.Canvas(fr, height=100, width=100) canv.pack() rect = canv.create_rectangle(25, 25, 75, 75, fill="white") # Schedule blink function to run canv.after(1000, blink, rect, canv) canv.after(2000, blink, rect, canv) canv.after(3000, blink, rect, canv) root.mainloop()
このコードは長方形を作成し、その塗りつぶしの色を白から赤に変更し、その色に戻すように 1 秒間隔で 3 回変更するようにスケジュールします。
after メソッドを使用して、指定したミリ秒数後に関数を実行するようにスケジュールしたり、関数を指定した間隔で繰り返し実行するようにスケジュールしたりすることもできます。これは、アニメーションを作成したり、新しいデータを定期的にチェックしたりする場合に役立ちます。
以上がTkinter の「after」メソッドを使用して単純なアニメーションを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。