Пошаговое руководство. Обновление строки состояния во время выполнения
Обновлен: Ноябрь 2007
Важное примечание. |
---|
Элементы управления StatusStrip и ToolStripStatusLabel заменяют элементы управления StatusBar и StatusBarPanel и расширяют их функциональные возможности; однако при необходимости элементы управления StatusBar и StatusBarPanel можно сохранить для обратной совместимости и использования в будущем. |
Часто при изменении состояния приложения или при вмешательстве пользователя программа требует динамическое обновление содержимого панелей строки состояния во время выполнения. Обычно это используется для того, чтобы оповестить пользователя о нажатии клавиши CAPS LOCK, NUM LOCK или SCROLL LOCK или в удобном виде представлять сведения о дате или времени.
В следующем примере будет использовать экземпляр класса StatusBarPanel для размещения часов.
Чтобы подготовить строку состояния к обновлению
Создание новой формы Windows Forms
Добавьте элемент управления StatusBar в форму. Дополнительные сведения см. в разделе Практическое руководство. Добавление элементов управления в формы Windows Forms..
Добавьте панель строки состояния в элемент управления StatusBar. Дополнительные сведения см. в разделе Практическое руководство. Добавление панелей в элемент управления StatusBar.
Свойству ShowPanels элемента управления, добавленного в форму StatusBar, присвойте значение true.
Добавьте компонент Windows Forms Timer в форму.
Примечание. Компонент Windows Forms System.Windows.Forms.Timer предназначен для среды Windows Forms. Если требуется таймер для серверной среды, см. раздел Знакомство с серверными таймерами.
Установите для свойства Enabled значение true.
Присвойте свойству Interval элемента Timer значение 30000.
Примечание. Для свойства Interval компонента Timer задано значение "30 секунд" (30000 миллисекунд), чтобы гарантировать отображение точного времени.
Чтобы реализовать обновление таймера в строке состояния
Чтобы обновить панель элемента управления StatusBar, вставьте в обработчик событий компонента Timer следующий код.
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick StatusBar1.Panels(0).Text = Now.ToShortTimeString End Sub
private void timer1_Tick(object sender, System.EventArgs e) { statusBar1.Panels[0].Text = DateTime.Now.ToShortTimeString(); }
private: System::Void timer1_Tick(System::Object ^ sender, System::EventArgs ^ e) { statusBar1->Panels[0]->Text = DateTime::Now.ToShortTimeString(); }
Теперь все готово к запуску приложения. Необходимо понаблюдать за часами, работающими в панели строки состояния.
Чтобы проверить работу приложения, выполните следующие действия.
Запустите отладку приложения и нажмите клавишу F5 для запуска приложения. Дополнительные сведения об отладке см. в разделе Отладка в Visual Studio.
Примечание. Часы появятся в строке состояния примерно через 30 секунд. Это необходимо для отображения наиболее точного времени. С другой стороны, чтобы часы появились раньше, можно уменьшить значение свойства Interval, которое было задано на шаге 7 в предыдущей процедуры.
См. также
Задачи
Практическое руководство. Добавление панелей в элемент управления StatusBar
Ссылки
Общие сведения об элементе управления StatusBar (Windows Forms)