C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: BackgroundWorker を2つ続けて・・・


(過去ログ 30 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■14477 / inTopicNo.1)  BackgroundWorker を2つ続けて・・・
  
□投稿者/ ぽん他 (13回)-(2008/02/19(Tue) 18:13:34)

分類:[C#] 

お世話になっております。ぽん他です。

大変お世話になっております。
調べても判らないのでまた質問させて下さい。

フォームに、BackgroundWorker を2つ設置して、
ボタンクリックで、

bgWorker1.RunWorkerAsync();
bgWorker2.RunWorkerAsync();

と行うときに、bgWorker1が終了してから、
bgWorker2を動作させるには、どうしたらいいのでしょうか?

フォームにプログレスバーが2つあるんですが、
同時、またはbgWorker2の方が軽い処理なので先に終ってしまいます。

こういう使い方はしないのでしょうか?

form1 で ボタンクリックで、form2をShowDialog で表示し、
form2のボタンで、上記のRunWorkerAsyncを1,2と順番に動作させ
プログレスバーに進捗を表示したいのです。

宜しくお願いします。
もう少し調べてみます。

引用返信 編集キー/
■14478 / inTopicNo.2)  Re[1]: BackgroundWorker を2つ続けて・・・
□投稿者/ 魔界の仮面弁士 (639回)-(2008/02/19(Tue) 19:10:12)
No14477 (ぽん他 さん) に返信
> bgWorker1.RunWorkerAsync();
> bgWorker2.RunWorkerAsync();
> と行うときに、bgWorker1が終了してから、
> bgWorker2を動作させるには、どうしたらいいのでしょうか?
「1」の RunWorkerCompleted イベントにて、
「2」を RunWorkerAsync してみてください。

> こういう使い方はしないのでしょうか?
順次制御であれば、一つの BackgroundWorker で良いと思いますよ。
DoWork イベント中に、二つの処理を書くだけですから。

引用返信 編集キー/
■14482 / inTopicNo.3)  Re[2]: BackgroundWorker を2つ続けて・・・
□投稿者/ ぽん他 (15回)-(2008/02/19(Tue) 19:51:31)
魔界の仮面弁士 さん

お返事ありがとうございます。

> 「1」の RunWorkerCompleted イベントにて、
> 「2」を RunWorkerAsync してみてください。

期待したとおりに動作しました。
なるほどです。

>>こういう使い方はしないのでしょうか?
> 順次制御であれば、一つの BackgroundWorker で良いと思いますよ。
> DoWork イベント中に、二つの処理を書くだけですから。

これには、正直悩んでいた自分が情けないです。
教えて頂いた通り、2つの処理を書いて、
表示するラベル、プログレスバーを代えるだけど
期待した動作が実現できました。

大変助かりました。
ありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -