C# のプログレス バーを使用する方法を教えてください。
C#では、ProgressBarクラスを使用してプログレスバーを作成および管理できます。プログレスバーを使用する一般的な手順を以下に示します。
- フォームまたはユーザーコントロールにProgressBarコントロールを追加する。
- プログレスバーの範囲を決めるために、最小値(Minimum)や最大値(Maximum)などのProgressBarの属性を設定します。
- 現在の進捗状況の値はValueプロパティに設定します。この値は最小値と最大値の間でなければなりません。
- 必要に応じてプログレスバーのスタイル、色、サイズなどの外観設定を変更できます。
- 長時間動作の実行や非同期操作など、適切な場所で進捗バーの値を更新します。
- タスクが完了したら、進捗バーの値が最大値になることを確実に設定し、タスクが完了したことを示します。
プログレス バー コントロールを操作する方法を示す、サンプル コードを以下に示します。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void buttonStart_Click(object sender, EventArgs e)
{
// 设置进度条的范围
progressBar1.Minimum = 0;
progressBar1.Maximum = 100;
for (int i = 0; i <= 100; i++)
{
// 更新进度条的值
progressBar1.Value = i;
// 模拟长时间运行的任务
System.Threading.Thread.Sleep(100);
// 强制刷新进度条,使其更新显示
progressBar1.Refresh();
}
// 任务完成后,将进度条的值设置为最大值
progressBar1.Value = progressBar1.Maximum;
}
}
このサンプルでは、ボタンをクリックすると、プログレスバーは0から100に向かって増加し始め、長時間実行タスクをシミュレートします。スレッド内のThread.Sleep(100)は、タスクの実行時間をシミュレートするために使用します。これは、実際の状況に応じて調整できます。プログレスバーの値を更新するたびに、Refresh()メソッドを使用してプログレスバーを強制的に更新し、表示を更新します。タスクが完了すると、プログレスバーの値を最大値に設定して、タスクが完了したことを示します。