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

わんくま同盟

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

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


(過去ログ 113 を表示中)
■66831 / )  Re[2]: フォームで処理中に「処理中・・・」画面を表示したい。
□投稿者/ taka (2回)-(2013/05/30(Thu) 09:20:09)
魔界の仮面弁士 さん 書き込みありがとうございます!

Gifアニメは処理中でなければ動きますので、

> ただし、メインスレッドで重い処理を行っている場合は
> 再描画されないため、アニメーションされません。

ここにはまっているのかもしれません。


> その場合は、重い処理を BackgroundWorker に担当させるなどして
> 回避してみてください。進捗表示に使うにも便利ですよ。

恥ずかしながらBackgroundWorkerというものを初めて聞きましたので
今から試行錯誤しながら実装してみたいと思います。

>> System.Threading.Thread.Sleep(1000)
> メインスレッド(画面を持つ UI スレッド)から Sleep を呼ぶことは厳禁です。
↑の部分は「アニメーション・文字変換処理を行いたい場合は」ということでよろしいでしょうか?
テスト用に時間のかかる処理をしたく、安易にSleepを使用しておりました。


とりあえずBackgroundWorkerを使用してみて、また結果ご報告させていただきます。
また、その他良い方法ありましたら教えていただけると助かります。

=============================================================
ちなみに「処理」というのは
@Excel出力処理
Aデータベースからのデータ表示処理
B計算処理
というのを想定しており、全ての場合に表示しようと考えております。


返信 編集キー/


管理者用

- Child Tree -