0

Tkinter を使用する Python GUI があります。データを取得するには、別の場所に SSH 接続する必要があります。GUIがハングしないように、これを行うために新しいスレッドを開始します。この間、ロード中であることをユーザーに知らせる画面をポップアップ表示したいと考えています。プログラムがデータの取得を終了したら、読み込み画面を閉じたいと思います。スレッドが完了したことをメインループに認識させるにはどうすればよいですか? そのスレッドを使用して、メイン ループに存在する読み込み画面を閉じようとしましたが、それが機能しないことがわかりました。

GUI を使用しないプロデューサー コンシューマー モデルをいくつか見てきましたが、それらには while ループがあります。これは私を助けません。また、他のパッケージをダウンロードしてインストールしたくありませんが、インポートは問題ありません。ご協力ありがとうございました!

4

1 に答える 1

0

完了したら、スレッドにフラグを設定させます。GUI でそのフラグを定期的にチェックし、設定されている場合はウィンドウを閉じます。

フラグをチェックする関数を作成することでフラグをチェックできます。フラグが設定されていない場合はafter、数百ミリ秒後に再び実行されます。スレッドが終了した直後にウィンドウが消えることはありませんが、遅延が数百ミリ秒を超えない限り、ユーザーは気付かないでしょう。

于 2011-07-20T18:06:35.783 に答える