Show / Hide Table of Contents

Пошаговое руководство. Обновление строки состояния во время выполнения

Important

StatusStrip И ToolStripStatusLabel элементы управления заменяют и расширяют функциональные возможности для StatusBar и StatusBarPanel управляет; Однако StatusBar и StatusBarPanel элементы управления сохраняются для обеспечения обратной совместимости и использования в будущем, если вы Выберите этот параметр.

Часто программа требует динамического обновления содержимого панелей строки состояния в среде выполнения с учетом изменений в состоянии приложения или других взаимодействий с пользователем. Это обычный способ сообщить пользователям о том, что CAPS LOCK, NUM LOCK или SCROLL LOCK включен, или сообщить ему дату или время в удобном формате.

В следующем примере используется экземпляр StatusBarPanel класса для размещения часов.

Получение строки состояния, готовой для обновления

  1. Создание новой формы Windows Forms.

  2. Добавьте элемент управления StatusBar в форму. Подробную информацию см. в разделе Практическое руководство. Добавление элементов управления в Windows Forms.

  3. Добавьте панель строки состояния для вашей StatusBar элемента управления. Подробную информацию см. в разделе Практическое руководство. Добавление панелей в элемент управления StatusBar.

  4. Для StatusBar вы добавили в форму элемента управления значение ShowPanels свойства true.

  5. Добавление форм Windows Timer в форму компонент.

    Note

    Windows Forms System.Windows.Forms.Timer компонент разработан для среды Windows Forms. Если вам требуется таймер, подходящий для серверной среды, см. раздел Общие сведения о серверных таймерах.

  6. Задайте для свойства Enabled значение true.

  7. Задайте Interval свойство Timer значение 30000.

    Note

    Interval Свойство Timer компонент устанавливается равным 30 секундам (30 000 миллисекунд), чтобы гарантировать, отражали точного времени для отображения.

Реализация таймера для обновления строки состояния

  1. Вставьте следующий код в обработчик событий Timer компонент для обновления панели StatusBar элемента управления.

    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();  
      }  
    

    Теперь вы готовы запустить приложение и увидеть, как работают часы в панели строки состояния.

Тестирование приложения

  1. Выполните отладку приложения и нажмите клавишу F5, чтобы его запустить. Дополнительные сведения об отладке см. в разделе Отладка в Visual Studio.

    Note

    Часы появятся в строке состояния примерно через 30 секунд. Это необходимо для того, чтобы время отображалось максимально точно. И наоборот, чтобы часы появились быстрее, можно уменьшить значение Interval заданному на шаге 7 в предыдущей процедуре.

См. также

  • StatusBar
  • ToolStripStatusLabel
  • Практическое руководство. Добавление панелей в элемент управления StatusBar
  • Практическое руководство. Идентификация панели элемента управления StatusBar, которую щелкнул пользователь, в Windows Forms
  • Общие сведения об элементе управления StatusBar
Back to top Неофициальная документация по .NET на русском языке. Лицензия: CC-BY 4.0. Основано на документации по .NET с Microsoft Docs
Generated by DocFX