Элемент ProgressBar

We use cookies. Read the Privacy and Cookie Policy

Элемент ProgressBar

Элемент управления ProgressBar предназначен для индикации процесса выполнения какой-либо операции. Как правило, данный элемент активно используется при выполнении долгих операций, чтобы пользователь получил иллюзию контроля над работой приложения.

Чаще всего разработчик оперирует свойствами Minimum, Maximum и Value. Свойства Minimum и Maximum задают минимальное и максимальное значения свойства Value. А свойство Value определяет текущее значение индикатора.

Как правило, данный элемент отображается в момент начала долгой операции, а после ее завершения делается невидимым с помощью метода Hide или свойства Visible.

Для демонстрации работы индикатора прогресса было создано приложение, которое позволит отследить время варки яиц вкрутую. Предположим, что для варки достаточно трех минут. Нужно положить яйца в воду и запустить таймер. По истечении трех минут приложение должно отобразить соответствующее сообщение. Основной код приложения приведен в листинге 3.9.

Листинг 3.9

private void tmrCook_Tick(object sender, EventArgs e) {

 if (this.progressBar1.Value < this.progressBar1.Maximum) {

  this.progressBar1.Value += 1;

  lblCounter.Text = this.progressBar1.Value.ToString();

 }

 if (this.progressBar1.Value >= this.progressBar1.Maximum) {

  tmrCook.Enabled = false;

  MessageBox.Show("Яйца сварились!");

  this.progressBar1.Value = 0;

  lblCounter.Text = "0";

 }

}

private void butStart_Click(object sender, EventArgs e) {

 tmrCook.Enabled = true;

}

На рис. 3.6 показан внешний вид приложения в момент отсчета времени.

Рис. 3.6. Индикатор прогресса, позволяющий сварить яйца вкрутую