1.7 第一个Visual Basic应用程序
Visual Basic的最大特点是在IDE环境下能以最快的速度和效率开发出具有良好用户界面的应用程序。如前所述,对象已被抽象为固体的控件,因而大大简化了程序设计。一般来说,用Visual Basic 6.0开发应用程序时,其一般编程步骤为:
(1)界面设计:包括建立窗体和利用控件在窗体上创建各种对象。
(2)设置对象的属性:为建立的窗体和控件等对象设置属性。
(3)编写事件驱动代码:为具体的过程或事件编写必要的代码。
(4)程序运行与调试。
下面通过创建一个简单的“Hello,Visual Basic”应用程序为例,来介绍这些步骤是如何进行的。
1.7.1 界面设计
用户界面由对象即窗体和控件组成。所有的控件都放在窗体上,程序的所有控件都通过窗体显示出来,窗体是应用程序的最终用户界面。在应用程序中要用到哪些控件,就在窗体上建立相应的控件。程序运行后,将在屏幕上显示由窗体和控件组成的用户界面。
在1.5.1节已经看到,启动VB 6.0后,会打开“新建工程”对话框,选择“标准EXE”图标后,单击“打开”按钮,系统建立一个默认的名称为“Form1”的窗体。接下来就可以在窗体“Form1”上设计应用程序的界面。
(1)添加控件
向窗体添加控件的方法有两种:
①单击工具箱中的控件图标,例如想要将Label控件添加到窗体上,则在工具箱中单击Label控件图标(),当鼠标指针变成一个“十”字指针时,在窗体的工作区按住鼠标左键拖动鼠标,此时在窗体中就会出现一个虚框,鼠标停留一段时间以后,就会出现一提示工具条,显示标签的尺寸,如图1-30所示。松开鼠标左键以后,就会在虚框的位置上出现一个标签控件,标签控件上将显示Lable1,如图1-31所示。
图1-30 拖动鼠标出现虚框
图1-31 添加标签控件
②双击工具箱中的控件图标,即可在窗体的中央画出控件。
第2种方法与第1种方法的不同之处在于,第1种方法画出的控件大小和位置可随意确定,而第2种方法画出的控件的大小和位置是暂时固定的。当然,控件大小和位置都可以根据需要进行修改。
编者手记
设计界面时,窗体上画出控件后,控件的边框上会出现8个蓝色小方块,这表明该控件是“活动”的,通常把这个控件称为“当前控件”。用鼠标单击控件,可以使之成为当前控件。
(2)调整控件的尺寸
注意,出现在控件四周的小方块称作尺寸句柄;添加好控件后,可用这些尺寸句柄调节控件尺寸。也可用鼠标、键盘和菜单命令移动控件、锁定和解锁控件位置以及调节控件位置。
调整控件的尺寸,可以用以下几种方法。
①直接使用鼠标拖动控件到需要的尺寸。首先,用鼠标单击要调整尺寸的控件,这时选定的控件上就会出现尺寸句柄;然后,将鼠标指针定位到尺寸柄上,当出现双向箭头时,拖动该尺寸柄直到控件达到所希望的大小为止(注意,角上的尺寸柄可以调整控件水平和垂直方向的大小,而边上的尺寸柄调整控件一个方向的大小),如图1-32所示。最后,释放鼠标按钮即可。
图1-32 用鼠标拖动控件到需要的尺寸
②用Shlft键加上箭头键调整选定控件的尺寸。
③通过属性窗口来改变控件尺寸。在属性窗口中,有2个属性与控件的尺寸有关,即Width和Height。可通过改变这两个属性的值来改变控件的尺寸。
(3)调整控件的位置
要移动控件,可以用以下几种方法。
①用鼠标把窗体上的控件拖动到一新位置。
②通过属性窗口来改变控件位置。在属性窗口中,有2个属性与控件的位置有关,即Top和Left属性。可通过改变这两个属性的值来改变控件的位置。
③选定控件后,可用Ctrl键加箭头键每次移动控件一个网格单元。如果该网格关闭,控件每次移动一个像素。
(4)锁定控件和调整锁定控件的位置
要锁定所有控件位置,可用以下两种方法。
①选择【格式→锁定控件】菜单命令,如图1-33所示。
图1-33 锁定控件(1)
②右击窗体中的空白处,在弹出的快捷菜单中选择【锁定控件】菜单命令,如图1-34所示。
图1-34 锁定控件(2)
若想解除锁定,则重新选择【锁定控件】菜单命令即可。
编者手记
这个操作将把窗体上所有的控件锁定在当前位置,以防止已处于理想位置的控件因不小心而移动。本操作只锁住选定窗体上的全部控件,不影响其他窗体上的控件。这是一个切换命令,因此也可用来解锁控件位置。
要调节锁定控件的位置,可用以下两种方法。
①按住Ctrl键,再用合适的箭头键可“微调”已获焦点的控件的位置。
②可在“属性”窗口中改变控件的Top和Left属性。
(5)控件的布局
当窗体上存在多个控件时,需要对这些控件进行排列、对齐、统一尺寸、调整间距等操作。这些操作可以通过【格式】菜单来完成。首先使用下列方法之一来选定多个控件。
①按住Shift键不放,再用鼠标单击需要选定的控件。
②在窗体的空白区域按住鼠标左键拖曳鼠标,将需要选定的控件框起来。选定多个控件后,即可使用【格式】菜单对这些选定的控件进行格式调整。如果要对齐控件或统一控件的尺寸,首先需要确定以哪个控件为准。在选定多个控件之后,可以用鼠标单击此控件,使该控件的句柄成为实心,则对齐或调整大小时都会以该控件为准。
(6)控件的复制和删除
Visual Basic允许对当前控件进行复制操作。假设窗体上的当前控件为标签控件“Label1”,对其进行复制操作的步骤如下。
①执行【编辑→复制】菜单命令。
②执行【编辑→粘贴】菜单命令,此时屏幕上会弹出一个对话框,如图1-35所示,提示“已经有一个控件为‘Label1’,创建一个控件数组吗?”单击“否”按钮后,将在窗体的左上角复制一个文本框,用鼠标拖曳此标签控件到适当的位置即可。
图1-35 复制控件
编者手记
如果单击“是”按钮,将创建控件数组,有关控件数组的使用将在后面章节中进行介绍。
要删除一个控件,必须先选中该控件使其成为当前控件,再按Del键。
现在通过上面的描述向Form1窗体上添加两个控件TextBox控件和Command控件,调整它们的尺寸、位置以及布局等,生成“Hello,Visual Basic”应用程序的界面,如图1-36所示。
图1-36 “Hello,Visual Basic”应用程序界面
1.7.2 设置对象的属性
下一步是给创建的对象设置属性。在“视图”菜单中选择“属性窗口”命令、单击工具栏上的“属性窗口”按钮或使用控件的上下文菜单,都可以打开属性窗口。
要在“属性窗口”中设置属性,一般采用的操作方法是:用鼠标右键单击该对象,在该对象的快捷菜单中选择“属性窗口”,在随后出现的【属性】窗口中即可修改其属性值。对于对象的其他属性,若用户不做设置,则该属性值均取Visual Basic的默认值。
在本例中,现在要改变三种属性的设置值,而其他属性则采用默认值。
(1)选中Form1窗体,在“属性”窗口中,将“Caption”属性值设置为“第一个Visual Basic应用程序”,如图1-37所示。
图1-37 设置“Caption”属性
(2)选中TextBox1控件,在其“属性”窗口中,将“Text”属性值设置为空。
(3)选中Command1控件,在其“属性”窗口中,将“Caption”属性值设置为“确定”。
编者手记
另外,在Visual Basic中,所有窗体都有一个普通的默认图标,它们在窗体最小化时出现。如果读者想换一个能说明窗体或应用程序的具体用途的图标,设置窗体的Icon属性,可给窗体指定新的图标。
1.7.3 编写事件驱动代码
代码编辑器窗口是编写应用程序的Visual Basic代码的地方。代码由语句、常数和声明部分组成。使用代码编辑器窗口,可以快速查看和编辑应用程序代码的任何部分。
可通过双击要编写代码的窗体或控件来打开代码编辑器。或从“工程管理器”窗口,选定窗体或模块的名称,然后选取“查看代码”按钮。
如图1-38显示了在双击命令按钮控件(Command1控件)后出现的代码编辑器窗口以及该命令的事件。
图1-38 代码编辑器
另外要注意,在同一个代码窗口中可以显示全部过程,也可只显示一个过程。
要在同一代码窗口中显示全部过程,可按照以下步骤执行。
(1)在“工具”菜单下,选定“选项”对话框。
(2)在“选项”对话框的“编辑器”选项卡中,选取“默认为全模式查看”左边的复选框。在“过程分隔符”左边的复选框,可在各过程间添加或去掉分隔线。
或者在代码编辑器窗口的左下角单击“全模块查看”按钮。
要代码窗口每次只显示一个过程,可按照以下步骤执行。
(1)在“工具”菜单下选定“选项”对话框。
(2)在“选项”对话框的“编辑器”选项卡中,清除“默认为全模式查看”左边的复选框。
或者在代码编辑器窗口的左下角单击“过程查看”按钮。
下面来编写本例的事件驱动代码。
Visual Basic应用程序的代码被分为称为过程的小的代码块。事件过程,正如此处正要创建的一样,包含了事件发生(例如单击按钮)时要执行的代码。控件的事件过程由控件的实际名称(Name属性中所指定的)、下画线(_)和事件名组合而成。例如,在单击一个名为Command1的命令按钮时调用的Click事件过程,可称为Command1_Click事件过程。
创建事件过程,可按照以下步骤执行。
(1)在“对象”列表框中,选定活动窗体中的一个对象名(活动窗体是指当前有焦点的窗体)。在这一例子中,选定命令按钮Command1。
(2)在“过程”列表框中,选择指定对象的事件名。此时Click过程已经被选定,因为它是命令按钮的默认过程。注意,这时事件过程的模板已经显示在“代码”窗口中。
(3)在Sub和End Sub语句之间输入下面的代码:
Text1.Text="Hello, Visual Basic"
这个事件过程代码应该是:
Private Sub Command1_Click()'命令按钮单击事件 Text1.Text="Hello, Visual Basic" '显示文本 End Sub
此处代码只简单改变了控件Text1的Text属性,读入“Hello, Visual Basic”。
编者手记
VB注释程序代码的符号是单引号('),只要在某行程序前面加上“'”,就可以注释该行程序。如果程序代码很长,一行一行地注释令人难以忍受。VB提供了解决这种困难的功能,在VB的编辑工具栏中的设置注释块按钮和解除注释块按钮,就可以实现这种功能。
VB的程序代码是允许换行书写的,只要在每次换行的最后一个字符处加上换行字符“_”就可以了。
1.7.4 运行应用程序
为了运行应用程序,可以从“运行”菜单中选择“启动”,或者单击工具栏中的“启动”按钮(图标为),或按F5键。如果应用程序的运行结果不符合设计的要求,则需要修改程序。修改程序包括修改对象的属性和代码,或添加新的代码,以及调整控件的大小等。
如果程序代码没有错误,将得到正常的界面,本例结果如图1-39所示。
图1-39 第一个VB应用程序结果
单击“确定”按钮,文本框中就会显示“Hello, Visual Basic”,如图1-40所示。
图1-40 显示“Hello, Visual Basic”