Visual Basic 创建状态栏

创建状态栏

状态栏通常位于窗口的底部,主要用于显示应用程序的各种状态的信息。StatusBar控件是ActiveX控件,添加的方法与ImageList相同,添加后在控件工具箱中出现StatusBar控件的图标

状态栏控件是由面板(Panels)集合构成的,在集合中最多可包含16个窗格对象,每个对象可以显示图像和文本。如图7.17所示,显示了一个具有三个窗格的状态栏。

图7.17 状态栏示例

在运行时,可以通过Text,Picture和Width等属性动态地改变窗格对象。要在设计时更改窗格对象的属性或添加窗格对象,可以用鼠标右键单击控件,然后选择"属性"来显示"属性页"对话框,如图7.18所示。

图7.18 状态栏属性页

在状态栏控件的"属性页"对话框中,"通用"标签上的为状态栏的通用属性,包括Style,MousePointer,SimpleText,OLEDropMOde,Enabled和ShowTips属性。"窗格"标签上的是窗格的属性,其中索引(Index)是一个从1开始的数值,用它来唯一标识集合中的对象。"插入窗格"按钮创建一个新的窗格,"删除窗格"按钮删除当前索引号所指的窗格。文本(Text)属性设置窗格对象的标签。图片(Picture)属性设置窗格上显示的图片,其与文本属性显示相对位置要根据对齐方式的设置。工具提示文本(ToolTipText)设置当用户将鼠标放在窗格上是显示的提示信息。关键字(Key)属性设置一个唯一标识集合中对象的字符串,它的作用和索引类似。对齐(Alignment)属性设置窗格对象上文本的对齐方式,有左对齐、居中对齐、右对齐。

样式(Style)属性设置窗格的样式,这也是状态栏控件最有用的部分,能够用最少的代码显示键盘状态、时间和日期。如表7.5所示,列出了Style属性的设置值。

表7.5 状态栏控件窗格对象的Style属性设置值

|---------|---|----------------------------------------------------------------------------------|
| 常 数 | 值 | 说 明 |
| sbrText | 0 | 默认值。显示文本和图片 |
| sbrCaps | 1 | 显示Caps Lock键状态。当Caps Lock处于激活状态时,显示粗体字母CAPS,反之则显示灰色字母CAPS。可以通过设置文本属性更改显示的字符串 |
| sbrNum | 2 | 显示Num Lock键状态。当Num Lock处于激活状态时,显示粗体字母NUM,反之则显示灰色字母NUM。可以通过设置文本属性更改显示的字符串 |
| sbrIns | 3 | 显示Insert键状态。当Insert键处于激活状态时,显示粗体字母INS,反之则显示灰色字母INS。可以通过设置文本属性更改显示的字符串 |
| sbrScrl | 4 | 显示Scroll Lock键状态。当Scroll Lock处于激活状态时,显示粗体字母SCRL,反之则显示灰色字母SCRL。可以通过设置文本属性更改显示的字符串 |
| sbrTime | 5 | 显示系统时间。此时忽略该窗格的文本属性 |

续表

|---------|---|-----------------------------|
| 常 数 | 值 | 说 明 |
| sbrDate | 6 | 显示系统日期。此时忽略该窗格的文本属性 |
| sbrKana | 7 | 显示Kana Lock键状态(仅在日文操作系统中有效) |

窗格对象的最小宽度、实际宽度和自动调整大小属性是和它的显示宽度有关的。斜面属性决定窗格的外观,是凹的、凸的或平面的。

状态栏控件的事件包括PanelClick事件和PanelDblClick事件等。需要获得相应状态栏的单击事件,可以在PanelClick事件过程中使用Select Case语句。该事件包含的参数能够指出发生单击的窗格对象。相应的代码可如下:

Private Sub StatusBar1_PanelClick(ByVal Panel As MSComctlLib.Panel)

Select Case Panel.Index

Case 1

'相应处理程序段1...

Case 2

'相应处理程序段2...

Case Else

'处理其他情况...

End Select

End Sub

相关推荐
m0_748708055 分钟前
C++中的观察者模式实战
开发语言·c++·算法
qq_5375626717 分钟前
跨语言调用C++接口
开发语言·c++·算法
wjs202428 分钟前
DOM CDATA
开发语言
Tingjct29 分钟前
【初阶数据结构-二叉树】
c语言·开发语言·数据结构·算法
猷咪1 小时前
C++基础
开发语言·c++
IT·小灰灰1 小时前
30行PHP,利用硅基流动API,网页客服瞬间上线
开发语言·人工智能·aigc·php
快点好好学习吧1 小时前
phpize 依赖 php-config 获取 PHP 信息的庖丁解牛
android·开发语言·php
秦老师Q1 小时前
php入门教程(超详细,一篇就够了!!!)
开发语言·mysql·php·db
烟锁池塘柳01 小时前
解决Google Scholar “We‘re sorry... but your computer or network may be sending automated queries.”的问题
开发语言
是誰萆微了承諾1 小时前
php 对接deepseek
android·开发语言·php