学习目标
本章主要介绍VB应用程序界面设计中的窗体对象和控件对象(包括文本框、标签、命令按钮、单选按钮、复选框、框架、列表框、组合框、水平滚动条、垂直滚动条、图片框、图像框、直线和形状及定时器控件)。通过本章的学习,了解窗体和控件的常用属性、方法和事件,熟悉各个控件的特点和操作。
实训项目
1.项目题目:使用VB的窗体与控件设计一个简易的四则计算器。程序的运行界面如图2-1所示。

图2-1 计算器程序界面
2.项目要求:运行该程序时,使用鼠标单击相应的数字键和运算符键,如果单击“=”在上面的文本框中将显示运算结果。要取消运算,可单击“C”,而单击“OFF”可退出程序。
窗体是设计用户界面的基本平台,是用户与应用程序进行交互的实际窗口。窗体是Visual Basic中的对象,具有自己的属性、事件和方法。
窗体结构与Windows下的窗口十分相似。在程序设计阶段,称为窗体。程序运行后,也可以称为窗口。窗体结构如图2-1所示。

图2-1 窗体的结构
控制菜单又称系统菜单,位于窗体左上角。双击该图标将关闭窗体;如果单击该图标,将下拉显示系统菜单命令。标题栏是窗体的标题。单击左上角的最大化按钮可以使窗体扩大至整个屏幕,单击最小化按钮则把窗体缩小为一个图标,而单击关闭按钮将关闭窗体。上述系统菜单、标题栏、最小化、最大化按钮可以通过窗体属性设置,分别为ControlBox、Caption、MinButton、MaxButton。
窗体是一种对象,由属性定义其外观和操作,因此对窗体属性的设置是窗体设计的主要内容之一。窗体属性既可以通过属性窗口设置,也可以通过程序代码设置,但有些属性只能用程序代码设置,如CurrentX属性,而有些属性只能在设计阶段设置,如Name属性。下面介绍窗体的主要属性。
1. 名称(Name)属性
每个对象都具有名称属性,窗体也不例外。新建一个窗体后,系统会为其取一个默认的名字,如“Form1”、“Form2”等。不同的窗体必须具有不同的名称。在工程的任何地方都可以由名称访问窗体属性及其内含控件对象或调用它们的方法。“Name”属性只能在设计时设置,运行时是只读的。
有两点须注意:
(1)在VB中,对象事件过程名的形式是“对象名___过程名”,唯独窗体对象例外,所有窗体事件都以“Form”代替当前窗体对象。
(2)在VB中文版中,只有Name属性不是以属性名Name出现的,而是以文本“(名称)”出现。在程序中引用该属性时应使用“Name”。例如,如果需要在单击某窗体上命令按钮时显示当前窗体的名字,则可由如下的事件过程实现:
Private Sub Command1_Click()
MsgBox“您敲击的窗体是”& Command1.Parent.Name
End Sub
通过当前窗体的窗体名或关键字Me可以调用当窗体的属性或方法,但不能像窗体事件那样使用Form。
2. BorderStyle属性
该属性用于在设计阶段通过属性窗口设置窗体边框的样式,运行时不能设置或更改。其取值有六种,见表2-1。
表2-1 BorderStyle属性取值及对应的窗体样式
|
属 性 值 |
对 应 的 窗 体 样 式 |
|
0—None |
无边界、无标题栏、无控制菜单框及最大最小化和关闭按钮 |
|
1—Fixed Single |
边界固定,大小不可调,有标题栏、控制菜单框及关闭按钮 |
|
2—Sizable (默认值) |
窗体边界大小可调,有标题栏、控制菜单框及最大最小化和关闭按钮 |
|
3—Fixed Dialog |
窗体边界不可调,有标题栏、控制菜单框和关闭按钮 |
|
4—Fixed Toolwindow |
窗体边界不可调,有标题栏和关闭按钮,无控制菜单框 |
|
5—Sizable ToolWindow |
窗体边界大小可调,有标题栏和关闭按钮,无控制菜单框 |
3. Caption属性
设置或读取标题栏中显示的文本内容。使用该属性反映窗体的功能。例如,要将窗体Form1的标题栏设置为“计算器”,可用下列语句实现:
Form1.Caption=“计算器”
4. ControlBox、MaxButton、MinButton属性
该属性分别用于控制窗体是否具有左上角的控制菜单及右上角的最大化、最小化按钮,其取值为True和False两种,分别代表有或者没有。用户只能在设计阶段更改该组属性值。
5. Enable属性
Enable属性值为True或False,用于决定窗体对用户所产生的事件做出反应。该属性默认值为True。若将该属性设置为False,则窗体将失效,不能响应用户对该窗体所做的任何操作。只有一个窗体的应用程序,不能设置该属性为False,否则程序将无法进行下去。
6. Visible属性
Visible属性值为True或False,返回或设置窗体可见或隐藏。要在程序启动时隐藏窗体,设计时将Visible属性设置为False。在代码中修改该属性,能够在运行时动态改变显示效果以响应特定事件。
7. Icon属性
设置代表窗体控件菜单及最小化时的图标。Icon属性值通常为图标文件名,VB可以识别的图标文件类型有“*.ico”和“*.cur”两种。在设计阶段,可从属性窗口中弹出的对话框中选择要加载的图标,该图标将显示在窗体标题栏的最左边。如果要在代码中设置,需使用LoadPicture函数将图形文件赋给Icon属性。如:
Form1. Icon=LoadPicture(″d:\computer.ico″)
将把d:\computer.ico图标文件做为窗体Form1的最小化图标。