Tkinter で時計アプリケーションの更新をスケジュールする
人気の Python GUI ライブラリである Tkinter は、カスタム グラフィカル ユーザー インターフェイスを作成する機能を提供します。 GUI における一般的な要件の 1 つは、定期的に更新される時計のような要素の表示です。ただし、ループ内で time.sleep() メソッドを使用すると、GUI がフリーズする可能性があります。この記事では、Tkinter でクロックを作成し、その更新を効果的にスケジュールする方法について説明します。
Tkinter の 'after' メソッドの使用
Tkinter のルート ウィンドウは、次のような 'after' メソッドを提供します。指定された期間の後に関数を呼び出すようにスケジュールを設定できます。このメソッドを再帰的に使用すると、自動的に繰り返されるイベントを作成できます。
コード例
import Tkinter as tk import time class App(): def __init__(self): self.root = tk.Tk() self.label = tk.Label(text="") self.label.pack() self.update_clock() self.root.mainloop() def update_clock(self): now = time.strftime("%H:%M:%S") self.label.configure(text=now) self.root.after(1000, self.update_clock) app=App()
この例では、'update_ Clock' メソッドが呼び出されます。 1000 ミリ秒 (1 秒) ごとに、クロックが更新されます。 real-time.
制限
「after」メソッドは、スケジュールされた関数が時間どおりに正確に実行されることを保証しないことに注意することが重要です。 Tkinter はシングルスレッドであるため、アプリがビジー状態の場合は遅延が発生する可能性があります。ただし、これらの遅延は通常非常に短く、マイクロ秒単位で測定されます。
以上がTkinter で時計アプリケーションの更新を効率的にスケジュールするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。