C#のFormApplicationを使用して開発しています。
処理に時間のかかる処理をしている間、MessageBoxを出し「処理中...」などのメッセージを表記し、処理が終わったら自動的にMessageBoxを閉じたいです。
実際にMessageBoxを表示させ、ユーザーが押すことでMessageBoxを消すことは可能なのですが、ユーザーがボタンを押すのでは意味がないと思いボタンを表示させず、自動的に閉じる方法を考えてみたのですが、わかりませんでした。
「OK」等のボタンを表示させず、自動的にMessageBoxを閉じる方法をどなたか教えていただけないでしょうか?
それはもう MessageBox ではないので、Form で作るのが早いと思います。
ProgressBar クラスとかそれ専用のものを探してはいかがですか?
意外とあるあるな要望っぽいですね。私もそういうことがあって、自分で造っちゃいましたが。(私の場合はWPFでしたが)
簡単な実装なら、処理中表示用のPanel・Labelの表示ON/OFFとかでもいいかもしれませんね。
[BackgroundWorkerクラスを使用して進行状況ダイアログを作成する - .NET Tips (VB.NET,C#...)](https://dobon.net/vb/dotnet/programing/progressdialogbw.html
こちらはどうですか? 進捗表示・キャンセル対応です。
>Zuishin
ありがとうございます。Formのほうでつくって解決しました!
>SurferOnWww
ありがとうございます。ProgressBar使ってうまくいきました!
>dodox86
自分も調べてみたら意外とあるあるっぽくてびっくりしましたw
>radian
ありがとうございます。それも考えたのですが、重い処理してるとFormごと止まっちゃってバックグラウンドで動かさなきゃいけないのでちょっと厳しかったです...
>TN8001
ありがとうございます。いったんProgressBarを使って実装はできたのでこれも見ながら改良していきたいと思います。
おめでとうございます。ご自身の回答をベストアンサーに選び、質問のクローズをお願いします。
>BluOxy
忘れていました!ありがとうございます。
回答1件
あなたの回答
tips
プレビュー