当一个程序正在运行时,SysInfo控件可以响应操作系统中发生的变化。这些变化能够触发控件的事件,并且程序在需要时候可以响应。为了能够在项目中使用SysInfo控件,首先你必须在组件对话框中选择这一控件,并将它添加到Toolbox中。
SysInfo控件能够检测多种系统发生的变化。这里列举了程序员最常使用的事件:
我使用这一控件的一种方法是,编写代码以响应DisplayChanged事件。如果用户在程序运行时改变屏幕分辨率,程序能够调整窗体尺寸以适应新的屏幕分辨率设置。
而且,SysInfo控件具有一系列属性,这些属性可以让你的程序获得操作系统的信息。其中有一些属性只与运行于掌上电脑的程序有关。例如,你可以使用ACStatus属性去判断掌上电脑是否以交流电方式工作,并且BatteryLifeTime属性可以返回电池可以工作时间。
其它的SysInfo控件属性提供有关Windows台式电脑的信息,具体而言,有四种关于提供工作区信息的属性。这些属性是WorkAreaHeight, WorkAreaWidth, WorkAreaTop, WorkAreaLeft。这些属性返回的值都是以twips格式。例如,当任务栏位于屏幕下方的默认位置时,WorkAreaHeight将返回整个屏幕高度减去任务栏高度的值。同样,当你移动任务栏到屏幕左边时,WorkAreaWidth将返回整个屏幕宽度减去任务栏宽度的值。
这里是一个使用这些属性的例子。当窗体显示时,Form_Load程序触发窗体去填充整个工作区:
Private Sub Form_Load()
With SysInfo1
Me.Move .WorkAreaLeft, .WorkAreaTop, .WorkAreaWidth,
.WorkAreaHeight
End With
End Sub
由于你可以隐藏工作栏,可以将它移动屏幕的不同边缘,并且调整其尺寸,你可以使用SysInfo的属性来保证程序充分利用工作区域。