スクリプトの 1 つに小さな GUI を作成しました。すべてがうまくいっています。
1 つのボタンをクリックすると、いくつかの Web サイトから大量のデータを解析する大きな機能が起動します。
しかし、ボタンをクリックすると、関数が完全に実行されるまでプログラムがフリーズします。すべて正常に動作していますが、関数の実行中に GUI がフリーズするのはなぜですか。小さな進行状況バーを印刷したいのですが、それはできません。
以下はプログラムの一部です。
self.Button1 = Button(self.MENU, text="IELTS", command=self.My_Command)
self.Button1.grid(row=0, column=0,sticky=W+E)
def My_Command(self):
## HERE WE LAUNCH THE FUNCTION
Module_1.main() # My Big Function from another file
self.Button1.config(text="DONE")
Module_1.main() の実行中に何も実行/印刷できません ... GUI が完全にフリーズします。
Module_1.main() 関数はスレッド化されたパーサー (2 つの Web サイトからの一部のデータを解析する) であり、実行には通常 2 分かかります。この関数の実行に必要な 2 分間でプログラムとやり取りできるという考えを誰かが持っている場合、それは非常に役に立ちます。