更新:2007 年 11 月
| .gif) 重要说明: | 
|---|
| StatusStrip 和 ToolStripStatusLabel 控件替换了 StatusBar 和 StatusBarPanel 控件并添加了功能;但是也可选择保留 StatusBar 和 StatusBarPanel 控件以备向后兼容和将来使用。 | 
经常会有程序要求您根据应用程序状态的更改或其他用户交互情况,在运行时动态更新状态栏面板的内容。这是一种用于执行以下任务的常用方式:通知用户启用了 Caps Lock、Num Lock 或 Scroll Lock 之类的键,或者将日期或时钟作为方便的引用来提供。
在下面的示例中,将使用 StatusBarPanel 类的一个实例来承载时钟。
准备更新状态栏
- 创建新的 Windows 窗体。 
- 将 StatusBar 控件添加到您的窗体。有关详细信息,请参见如何:向 Windows 窗体添加控件。 
- 将状态栏面板添加到您的 StatusBar 控件。有关详细信息,请参见如何:向 StatusBar 控件添加面板。 
- 对于添加至窗体的 StatusBar 控件,将 ShowPanels 属性设置为 true。 
- 将 Windows 窗体 Timer 组件添加到该窗体。 .gif) 说明: 说明:- Windows 窗体 System.Windows.Forms.Timer 组件是为 Windows 窗体环境设计的。如果您需要适合服务器环境的计时器,请参见基于服务器的计时器介绍。 
- 将 Enabled 属性设置为 true。 
- 将 Timer 的 Interval 属性设置为 30000。 .gif) 说明: 说明:
通过实现计时器更新状态栏
- 将下面的代码插入 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(); }- 此时,您就可以运行该应用程序并观察在状态栏面板中运行的时钟。 
测试应用程序
- 调试该应用程序,然后按 F5 运行。有关调试的详细信息,请参见使用 Visual Studio 进行调试。 .gif) 说明: 说明:- 大约 30 秒之后,时钟才会出现在状态栏上。这样可以获得最精确的时间。相反地,要使时钟早些出现,应当减小在上文步骤 7 中设置的 Interval 属性的值。 
请参见
任务
如何:确定 Windows 窗体 StatusBar 控件中被单击的面板