現在、私は非常に簡単なことをコードしようとしています。それが行うことになって何実際の待ち時間を追加するには?
は:
- は
- は5秒
- 検索何かを待つグーグル入力します。
今、私はできない部分は待っています。 スレッドスリープなどがありますが、GUIを停止して自分のプログラムを使用できなくします。 私はタイマーでもできますが、実際のアプリケーションでは多くの待機があるので、それを行うには非常に効果的な方法ではありません... 2行のコードのようにGUI?
現在、私は非常に簡単なことをコードしようとしています。それが行うことになって何実際の待ち時間を追加するには?
は:
今、私はできない部分は待っています。 スレッドスリープなどがありますが、GUIを停止して自分のプログラムを使用できなくします。 私はタイマーでもできますが、実際のアプリケーションでは多くの待機があるので、それを行うには非常に効果的な方法ではありません... 2行のコードのようにGUI?
タイマーは、あなたがここに欲しいものを正確にです。 Action
とTimeSpan
などで渡すことができる単一のメソッドでカプセル化したい場合は、それは問題ありませんが、タイマーは間違いなく方法です。
GUIスレッドを停止するように、seprateスレッドで作業する必要があります。あなたは「5秒で、Xを行う」、言いたいタイマーがあなたのために何をするかを正確である(潜在的にUIスレッドで実行される) -
Thread worker = new Thread(dowork);
worker.Start();
は、あなたが 'のThread.sleep()を置くことができます(あなたはタイマーが、などに解雇したいかのスレッドによって異なります使用したいタイマーの種類)' 'dowork'方法で – Andrew
タイマーをX秒後にデリゲートを実行する小さなコードでラップすることができ、3〜10行のコードを必要とする代わりにそのデリゲートを使用することができます。 – CodingBarfield
@Barfieldmv:それはまさに私が "ひとつの方法でそれをカプセル化したいのなら..."という意味です –