プログレスバーを挿入した C# Windows アプリケーションを作成しました。
ボタンをクリックするとプログレス バーが表示され、2 ~ 3 秒間プロセスが開始され、プロセス バーが完了すると非表示になります。
このコードを使用してこれを解決しましたが、機能しません。
プログレスバーの実行中、ラベルボックスは「生成中... 45%」のようになり、ラベルボックスの完了後は「生成100%..」になるはずですが、ラベルを挿入するとエラーが表示されます。
生成ボタンをクリックする前の画像です。
処理中、私はこのように
なるはずです..最終プロセスでは、IDはこのようになり、進行状況バーは非表示になるはずです..
ProgressBar1.Visible = true;
if (isProcessRunning)
{
MessageBox.Show("A process is already running.");
return;
}
Thread backgroundThread = new Thread(
new ThreadStart(() =>
{
isProcessRunning = true;
for (int n = 0; n < 100; n++)
{
Thread.Sleep(1);
progressBar1.BeginInvoke(new Action(() => progressBar1.Value = n));
}
MessageBox.Show("Generated!!!");
if (progressBar1.InvokeRequired)
progressBar1.BeginInvoke(new Action(() => progressBar1.Value = 0));
isProcessRunning = false;
}
));
// Start the background process thread
backgroundThread.Start();