当前位置:首页 > VB程序设计初步详解
图1-12 【例1.2】运行效果图
1.4.2常用控件
本小节仅介绍几个常用控件,其它更多控件将在第六章中介绍。 1.窗体(Form)
窗体(Form)作为各种控件的容器,在整个应用程序中起着重要的作用。VB中每个窗体对应于程序运行时的一个窗口。
(1)窗体的属性
窗体的常用属性有上节中介绍过的Name,Caption,Enabled,Visible,Left,Top,Height,Width,Font,Forecolor,Backcolor,Mousepointer,MouseIcon外,还有一些建立用户界面时常用到的重要属性。 ①MaxButton属性和MinButton属性
这两个属性分别决定了窗体标题栏右上角的最大化按钮和最小化按钮是否可用。
◆ ◆ MaxButton属性为True,有最大化按钮;为False,无最大化按钮。 ◆ ◆ MinButton属性为True,有最小化按钮;为False,无最小化按钮。 ②ControlBox属性
该属性决定窗体标题栏的显示状态。
◆ ◆ 值为True时,窗体为正常显示状态,即有窗口控制菜单图标、标题文字及三
个窗口控制按钮
◆ ◆ 值为False时,窗体标题栏只显示标题文字,无其它两项
注意,当ControlBox属性设置为False时,MaxButton属性和MinButton属性无效。 ③WindowsState属性
该属性表示窗体运行时以何种状态显示,其值可取三种: 0 —— Normal:正常窗口状态,有窗口边界。 1 —— Minimized:最小化状态,以图标方式运行
2 —— Maxinized:最大化状态,无边框,窗口充满整个屏幕。 ④BorderStyle属性
窗体的边框样式由BorderStyle属性决定,其值有以下几种: 0 —— None:窗体没有边框和标题。
1 —— Fixed Single:窗体边框是固定单线,运行时不能改变窗体大小。 2 —— Sizable:窗体大小可以在运行时改变,此属性值为默认设置值。 3 —— Fixed Dialog:窗体为固定对话框风格的窗体,大小不能改变。
4 —— Fixed ToolWindow:工具栏风格的窗体,有关闭按钮,大小不能改变。 5 —— Sizable ToolWindow:工具栏风格的窗体,有关闭按钮,大小可以改变。
BorderStyle属性在运行时只读。当属性值设置为除2以外的它值时,系统将自动把MaxButton属性和MinButton属性设置为False。
⑤Moveable属性
该属性决定窗体在程序运行时是否可以被移动。其属性值为True,窗体可以拖动,此为默认设置值;为False时,窗体不可以被移动。
⑥Icon属性
VB默认的窗体左上角控制菜单图标为,当窗体最小化时也是以该图标显示,用户可在属性窗口中,单击Icon属性列表右边的,打开“加载图标”对话框,查找并打开一个图标文件(文件的扩展名为.ico或.cur)来改变该属性的值,此时,当窗体最小化时将以用户选择的图标来显示。
⑦Picture属性
利用该属性可以为窗体设置一幅背景图片,设置方法同Icon属性。 (2)窗体常用方法
窗体常用的方法有Print,Cls,Move.等。 ①Print方法
用于在窗体上输出信息。格式为:
[对象.]Print[{Spc(n)|Tab(n)}][表达式列表][;|,]
其中,[ ]中内容表示可省略,| 两边表示二者选一。其余各项含义如下:
对象:可以是窗体(Form)、图形框(PictureBox)或打印机(Printer)。省略即指在窗体中输出。
Spc(n)函数:用于在输出时在两个输出项间插入n个空格,可多次重复使用。 Tab(n)函数:用于在输出时光标从对象左端开始向右移动n列,允许重复使用。
表达式列表:指要输出的数值或字符串表达式。若省略,则表示输出一个空行,若输出多个表达式,则表达式间要用空格、逗号或分号分隔,也可出现Spc(n)函数和Tab(n)函数。表达式列表起始打印位置是由对象的CurrentX和CurrentY属性决定,默认起始位置为打印对象的左上角。
;(分号):表示光标定位上一个打印的字符后 ,(逗号):表示光标定位在下一个打印区的起始位置处。每个打印区之间相隔14列。 若既无分号“;”也无逗号“,”,则表示输出后光标换行。
注意:当窗体的AutoRedraw属性的值为False时,Print方法在Form_Load( )事件过程中无效。
②Cls方法
用于清除运行时窗体中显示的文本或图形。格式为: [对象.]Cls
其中,对象为窗体或图形框,省略则为窗体。 ③Move方法
用于移动窗体或控件,并可在移动过程中改变其大小。格式为: [对象.]Move 左边距离[,上边距离[,宽度[,高度]]]
其中,对象可以是窗体及除时钟、菜单外的所有控件,省略则为窗体。
左边距离、上边距离、宽度、高度四项均为数值表达式,以Twip为单位,分别改变窗体或控件的Left、Top、Width和Height属性值。其中,左边距离(Left)参数必须给定,其他3个参数可选,但若要给定某个参数,则必须给定语法中规定的出现在该参数前面的全部参数,这是该方法的一个特点。
如:Move Left+150,Top+150,Width+400
该语句功能是把窗体向左、向上移动150个Twip,同时窗体的宽度增加了400Twip。 【例1.3】Print方法和Cls方法应用例。在窗体的Load()和Click()事件过程中编写如下代码,注意:窗体的AutoRedraw属性必须设为True。运行程序,窗体装载后有如图1-13所示的输出效果,这时单击窗体,则窗体上输出信息被清除。
Private Sub Form_Click() ‘窗体单击事件过程 Cls ‘清屏 End Sub
Private Sub Form_Load() ‘窗体装载事件过程 Print Tab(16); \方法的使用示例\ Print Tab(16); \
Print ‘输出一个空行 Print
Print Spc(6); \加六个空格输出\光标在下一打印区\ Print Tab(4); \ Print \
Print Tab(4); \ Print \End Sub
图1-13 【例1.3】运行效果图
(3)窗体的常用事件
窗体中最常用的事件有Click(单击)事件,Dblclick(双击)事件和Load事件。 ①Click(单击)事件和Dblclick(双击)事件 程序运行时鼠标单击或双击窗体,将触发窗体的Click事件和DblClick事件。事实上,当在窗体上双击时,首先触发的是窗体的Click事件,然后才是DblClick事件,如果两个事件过程都编写了代码,则会被依次执行。
【例1.4】窗体的Click事件和DblClick事件。 Private Sub Form_Click()
Form1.Caption = \窗体的Click事件\‘窗体标题显示为“窗体的Click事件” Move 0, 0, Width + 400, Height + 400 ‘移动窗体至坐标(0,0)处同时改变其大小
End Sub
Private Sub Form_DblClick()
Form1.Caption = \窗体的DblClick事件 ‘窗体标题显示为“窗体的DblClick事件”
Move Left + 150, Top + 200, Width + 200 ‘移动窗体同时改变其大小 End Sub ②Load事件
Load事件是一个窗体被加载到内存中准备显示时触发的事件。与Click事件和DblClick事件不同,窗体的确良Load事件不是由用户的操作触发,面是当应用程序启动时,自动执行该事件,因此常常在此事件过程中进行窗体及其上控件的属性和变量初始化工作。
【例1.5】新建一个窗体,在Load事件中编写代码,使窗体的标题显示为“Load窗体”,并将窗体的背景改变为红色。
Private Sub Form_Load() Caption = \窗体\ BackColor = &H000000FF& End Sub
2.标签(Label)
标签(Label)主要用于显示文本信息,程序运行时标签所显示的内容不能由用户直接编辑,只能用Caption属性来设置或修改。
(1)标签的主要属性
有Name、Caption、Font、Left、Top、BorderStyle、BackStyle等。 (2)标签的方法
标签也具有Move方法,使用格式同窗体。 (3)标签的事件
标签能响应Click事件和DblClick事件,如:
Private Sub Label1_Click() ‘单击标签能改移动标签位置并改变其大小 Label1.Move Left + 150, Top + 200, Width + 200, Height + 200 End Sub
但一般情况下,标签的主要功能是在窗体上说明或显示文字,没有必要编写事件过程。 3.文本框(TextBox)
文本框(TextBox)是一个文本编辑区,用户可以文本框内输入、编辑、修改及显示文本内容。
(1)文本框主要属性
同样,文本框也具有前文介绍的一些基本属性,如Name、Font 、Top、Left、Width、Height、Enable、Visible、Alignment、BorderStyle、ForeColor等。此外,还具有以下重要属性。
①Text属性
Text属性是文本框的默认属性,文本框无Caption属性,显示的文本内容是存放在Text属性中,当程序运行时,用户通过键盘来输入和编辑文本内容。
②MaxLength属性
指文本框能接收输入文本内容的最大长度。该属性值的默认设置为0,表示可以输入任意长度的字符串。VB中的字符长度是以字为单位,一个西文字符和一个汉字长度均为1。
③MultiLine属性
该属性决定文本框是否具有多行显示功能。其值为True时,文本框可输入或显示多行文本,当输入的文本超出显示框时,会自动换行,按Enter键可插入一个空行;其值为False时,不支持多行显示,False为该属性的默认设置值。
④ScrollBars属性
仅当MultiLine属性值为True时,ScrollBars属性有效。该属性决定文本框是否有垂直或水平滚动条。当文本框加入水平滚动条后,自动换行功能自行消失,只有按Enter键才能换行。
0 —— None:无滚动条。
1 —— Horizontal:加水平滚动条。 2 —— Vertical:加垂直滚动条。
3 —— Both:同时加垂直和水平滚动条。 ⑤Locked属性
指定文本框内容中否允许被编辑,默认取值为False,表示允许编辑,值改为True时,文本框不允许被编辑,只能显示文本。
⑥PasswordChar属性
文本框作为密码输入控件时,该属性值设为单个字符可屏蔽显示密码。如将文本框的PasswordChar属性设置为“*”(星号),则文本框中输入的任何文本信息均以星号显示。PasswordChar属性只是改变了显示方式而已,文本框的Text属性仍正常。
⑦SelStart、SelLength、SelText属性 程序运行时,用户对文本框中的内容进行选择操作时,这3个属性用来标识用户选中的文本。
SelStart:确定选定正文的开始位置,第一个字符的位置为0。 SelLength:确定选定的文本长度。 SelText:选定的文本内容。
当设置了SelStart和SelLength属性后,VB自动将设定的文本送入SelText中存放。
共分享92篇相关文档