ホームページ >バックエンド開発 >Python チュートリアル >Tkinter のイベント ループと同時に外部コードを実行するにはどうすればよいですか?
Tkinter のイベント ループ内にユーザー定義コードを統合するのは難しい場合があります。この例では、初心者プログラマが、Tkinter がイベント ループを支配し、鳥の群れのシミュレーションが継続的に実行できないという問題に遭遇しています。
この問題に対処するために、Tk オブジェクトは強力なメソッド after を提供します。このメソッドの構文は次のとおりです。
def after(self, ms, func=None, *args): """Call function once after given time. MS specifies the time in milliseconds. FUNC gives the function which shall be called. Additional parameters are given as parameters to the function call. Return identifier to cancel scheduling with after_cancel."""
after を利用すると、指定した時間間隔の後に関数を実行するようにスケジュールできます。以下に例を示します。
from tkinter import * root = Tk() def task(): print("hello") root.after(2000, task) # reschedule event in 2 seconds root.after(2000, task) root.mainloop()
この例では、タスク関数は Tkinter イベント ループ内で 2 秒ごとに実行されるようにスケジュールされています。 mainloop 関数は、スケジュールされたタスクの実行中に Tkinter がイベントの処理を継続することを保証します。
このソリューションは、Tkinter のイベント ループと一緒に外部コードを実行するための信頼性が高く簡単な方法を提供し、複雑なマルチスレッドの概念の必要性を排除し、ハッキングを回避します。 「ボタンを押し続ける」メソッド。
以上がTkinter のイベント ループと同時に外部コードを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。