第 4章 控件本章的学习要点
标签、文本框的常用属性、事件、方法
命令按钮的常用属性、事件和方法
图片框、图像框的属性、事件、方法;图形文件的载入
框架的属性和功能
复选框、单选按纽的常用属性、事件、方法
列表框、组合框的常用属性、事件、方法
滚动条、计时器的常用属性、事件、方法
工具箱控件图解
4.1 概述指示器标签框架复选框组合框水平滚动条时钟目录列表框形状图象框
OLE
图片框文本框命令按钮单选按钮列表框垂直滚动条驱动器列表文件列表
LINE
Data
控件是 VB中预先定义好了的、程序中能够直接使用的对象,每个控件都有自己的属性、事件和方法。
VB有三种控件:
标准控件,存在于工具栏中,不可删除。被封装在
VB的,exe文件中,不可以删除。
ActiveX控件,由第三方制造的,以独立文件存在,
扩展名为,ocx,使用前必须添加到工具栏中。
可插入的对象,如 Execl,Word等能添加到工具栏中,
所以也是控件。
向工具箱中添加控件的方法
如果想使用标准工具箱中没有的控件,则必须将该控件添加到工具箱中。 添加过程如下:
4.1 概述
向窗体上添加控件,有三种方法:
方法一:
单击工具箱中的某控件图标,该图标反相显示;
移动鼠标至窗体上,光标变为,+”,按下鼠标左键不放,向右下方拖动鼠标;
当控件为合适大小时松开鼠标,一个控件就添加好了。
方法二:
双击工具箱中的某控件图标,在窗体中就添加了该控件,与第一种方法不同的是,所添加控件大小、位置是固定的。
方法三:
按如下步骤操可以添加多个某种类型的控件:
– 按住 Ctrl键,不要松开;
– 单击工具箱中要画的控件的图标,然后松开 Ctrl键;
– 按第一种方法在窗体上画出控件 (可以画一个或多个 );
– 画完控件后,单击工具箱中的指针图标 (或其他图标 )。
4.1 概述
4.2.1 标签( Label)
标签控件主要用于标注没有 Caption属性的控件的用途或向用户显示运行结果的。标签在运行时不具有交互性,不能响应用户事件。
标签控件的属性
Alignment:设置标签中文本的对齐方式。语法格式:
4.2 基本控件对象名,Alignment={0 | 1 | 2}
属性值 说 明
0 (默认值 )从左边开始显示标题,即左对齐
1 从右边开始显示标题,即右对齐
2 从中间开始显示标题,即居中对齐
标签控件的属性
AutoSize:设置标签是否能够自动调整大小以显示所有的内容。 语法格式:
其中:
属性值为 False(默认值 )表示显示控件的原始大小,
属性值为 True表示根据控件中的内容自动调整控件大小。
BackStyle:设置标签的背景样式。语法格式:
其中:
属性值为 1(默认值 )表示背景是不透明的;属性值为 0
表示背景是透明的。
4.2 标签 ( Label)
对象名,AutoSize={ True | False}
对象名,BackStyle= {0 | 1}
标签控件的属性
BorderStyle:设置标签的边框样式。语法格式:
其中:
属性值为 0(默认值 )表示无边框;属性值为 1表示单线边框。
Caption:设置标签的文本内容。 语法格式:
4.2.1 标签 (Label)
对象名,Caption [=字符串 ]
对象名,BorderStyle={0 | 1}
标签控件的事件和方法
标签具有 Click(单击 ),DbClick(双击 )等事件,但一般不需要编写代码。
标签的方法中常用的只有 Move,其基本语法如下:
其中:
– left,top,width,height分别表示移动目的位置的坐标和大小。 left为必要参数,其他三个为可选参数。
4.2.1 标签 (Label)
对象名,Move left,top,width,height
例 4.1
设计一个界面说明标签的基本属性的使用
界面设计 属性设置对象名 属性名 属性值
Label1 Caption 默认值
Label2 Caption 学习 VB
AutoSize True
BackStyle 0(透明 )
BorderStyle 1(单线边框 )
运行结果
4.2.2 文本框( Text)
文本框是一个文本编辑区域,主要用于接收用户的输入、输出、修改等信息,可以输入单行文本,也可以输入多行文本,在程序运行过程中具有良好的交互性。
文本框控件的属性
Name:设置文本框的名称。
Text:设置文本框中显示的文本内容。语法格式:
4.2 基本控件对象名,Text=字符串
文本框控件的属性
Locked:设置文本框是否可以被编辑。语法格式:
其中:
属性值为 False(默认值)表示文本内容可以编辑;
属性值为 True表示文本内容只能读但不能修改。
MaxLength:设置文本框中输入的字符串最大长度。
其中:
属性值 为 0(默认值)表示文本框中字符串的长度为任意值,只受操作系统内存的限制;属性值为 大于 0
的整数,该整数表示能够输入的最大字符数目。
4.2.2 文本框 (TextBox)
对象名,Locked ={ True | False}
文本框控件的属性
MultiLine:设置文本框是否可以输入多行文本。 语法格式:
其中:
属性值为 False(默认值)表示只能单行显示,不能显示多行;属性值设置为 True,表示可以多行显示文本,若文本行数超过文本框宽度,系统会自动为文本框添加滚动条。
PasswordChar:设置是否在文本框中显示用户所输入的字符串。语法格式为:
其中:
该属性如被设置为某一字符,如,*”,则无论在 Text属性值中输入什么,在文本框中都只显示,*”。
4.2.2 文本框 (TextBox)
对象名,MultiLine ={ True | False }
对象名,PasswordChar= "*"
注意:该属性有效的前提是 MultiLine属性必须设置为 False。
文本框控件的属性
ScrollBars:设置文本框滚动条的模式。语法格式:
4.2.2 文本框 (TextBox)
对象名,ScrollBars={0 | 1 | 2 | 3}
属性值 说 明
0 (默认值)表示没有滚动条
1 表示只有水平滚动条
2 表示只有垂直滚动条
3 表示既有水平滚动条又有垂直滚动条
文本框控件的属性
SelLength,SelStart和 SelText:控制文本框中的插入点和文本选定操作,这些属性仅能在运行时使用。语法格式:
其中:
SelLength设置选定文本的长度,只能在代码中使用,若值为 0,表示未选中任何内容。
SelStart设置选定文本的起始点,只能在代码中使用,第一个字符位置是 0。
SelText设置当前选定文本的内容,只能在代码中使用
4.2.2 文本框 (TextBox)
对象名,SelLength =数值对象名,SelStart =数值对象名,SelText =字符串
Text1.SelStart = 1
Text1.SelLength = 3
Text2.Text = Text1.SelText
文本框控件的事件
Change:当用户改变文本框的内容时,该文本框的
Change事件被触发,该事件对应的代码结构如下:
4.2.2 文本框 (TextBox)
Private Sub
Text1_Change()
End Sub
4.2.2 文本框 (TextBox)
例:程序运行时,通过用户输入,同步设置窗体的标题,
即用户输入什么,窗体标题就同步显示什么。
分析:
接收用户输入
用户输入的内容保存在文本框的什么属性中
窗体的标题与文本框内容一致 —— 赋值将文本框内容
Text赋予窗体的标题属性 Caption
同步显示
代码:
—— 文本框 text
Form1.caption=text1.text
—— 文本框 Change事件
Private Sub Text1_Change()
Form1.Caption = Text1.Text
End Sub
4.2.2 文本框 (TextBox)
例:程序运行时,用户输入密码时,在另一个文本框中显示用户输入的密码。
分析:
接收用户输入
用户输入的内容保存在文本框的什么属性中
文本框 2与文本框 1内容一致
同步显示
代码:
—— 文本框 Text
Text2.text=text1.text
—— 文本框 Change事件
Private Sub Text1_Change()
End Sub
Text2.Text = Text1.Text
文本框控件的事件
KeyPress:当文本框被选中时,按任意键该文本框的
KeyPress事件被触发,该事件对应的代码结构如下:
其中:
KeyAscii是按键事件的参数,反映了按键对应键名的
ASCII码值,输入数据时,通过 KeyPress事件过程来识别输入字符是否正确,达到判断检查的功能。
一般经常用以上两个事件过程中设置代码,来实现对输入文本框中的内容进行检查、验证和确认。
4.2.2 文本框 (TextBox)
Private Sub Text_KeyPress(KeyAscii As Integer)
End Sub
4.2.2 文本框 (TextBox)
例:判断文本框中输入的内容是否为数字按键盘上某键,如果输入的值不是 0~ 9之间的数字,则在窗体上显示相关的提示信息,否则没有任何提示。
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii < Asc("0") Or KeyAscii > Asc("9")
Then
Print "你输入的不是数字 "
End If
End Sub
文本框控件的方法
SetFocus:可以设置焦点,其获得焦点的显示效果是焦点(光标)在文本框中闪动。语法格式:
让指定的对象获得焦点。设置焦点,本方法可使指定的文本框 (或其他有聚焦能力的对象 )成为焦点,
也就是当前文本框,成为焦点的文本框中具有闪动的光标,
4.2.2 文本框 (TextBox)
对象名,SetFocus
口令口令口令
例 设计一个程序可检查密码是否正确,密码为,12345”
口令口令
4.2.2 文本框控件 (TextBox)
Private Sub Command1_Click()
pass= Text1.Text
If pass = "12345" Then
Label2.Caption =,口令正确! "
Else
Label2.Caption =,口令错,重新输入! "
End If
End Sub
4.2.3 命令按钮( CommandButton )
命令按钮通常在 Click事件中编写一段程序,当用户用鼠标单击这个按钮时,就会启动这段程序,执行某一特定的功能。
命令按钮控件的属性
Caption:设置命令按钮的标题。
Default:设置命令按钮是否为默认按钮,即当运行程序时,用户按回车键时,就激活它。 语法格式,
其中,属性值为 False(默认值)表示该按钮不响应 Default
事件;属性值为 True表示该命令响应 Default事件,即当用户按
Enter键时,与单击该按钮效果相同。
Cancel:设置命令按钮是否为 Cancel按钮,即当用户按 Esc键时,
是否触发它的 Click事件。语法格式:
4.2 基本控件对象名,Cancel={ True | False}
对象名,Default={True | False}
注意:
在一个窗体内,只能有一个 Default命令按钮,也只能有一个 Cancel命令按钮。
命令按钮控件的属性
Enabled:设置命令按钮是否能被按下。语法格式:
其中,
属性值为 True(默认值)表示该按钮能被响应;
属性值为 False表示该按钮不能被响应,以灰色显示。
Picture:设置命令按钮上显示的图形。语法格式:
4.2.3 命令按钮 (CommandButton)
对象名,Enabled={True | False}
对象名,Picture=LoadPicture("图形文件名 ")
命令按钮控件的属性
Style:设置命令按钮的类型。语法格式:
ToolTipText:设置当鼠标在命令按钮上暂停时显示的文本。
4.2.3 命令按钮 (CommandButton)
对象名,Style={0 | 1}
属性值 说 明
0 (默认值 )表示为标准按钮,只显示 Caption属性设置的文本
1 表示为图形风格,只显示由 Picture属性指定的图片对象名,ToolTipText=字符串
命令按钮控件的事件
Click,MouseDown,MouseUp:当单击鼠标时就会触发该三个事件。他们触发的顺序为 MouseDown、
Click,MouseUp 事件。
4.2.3 命令按钮 (CommandButton)
对象名,Default={True | False}
注意:
MouseDown和 MouseUp只能通过单击鼠标触发;而
Click既可通过单击鼠标触发,还可以在按钮获得焦点时按空格或回车键触发。
4.2.3 命令按钮 (CommandButton)
命令按钮的主要方法
SetFocus:设置焦点。设置为焦点的按钮在其表面有一个虚边框注意:
命令按钮不支持双击事件。
BackColor属性和 Picture属性在 Style属性值为 1
(图形方式)下,才能显示出来。
4.2.3 命令按钮 (CommandButton)
Private Sub Command1_Click()
Form1.Move Left + 500,Top - 500,Width + 500,Height + 500
End Sub
Private Sub Command2_Click()
Form1.Move Left - 500,Top + 500,Width - 500,Height - 500
End Sub
Private Sub Command3_Click()
End
End Sub
例:设计一个窗体,说明命令按钮的基本属性、事件、
方法的使用。
4.2.3 命令按钮 (CommandButton)
界面设计 属性设置见课本运行结果代码如下:
Private Sub Command1_Click()
Label4.Caption = "+"
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub Command2_Click()
Label4.Caption = "-"
Text3.Text = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub Command3_Click()
Label4.Caption = "*"
Text3.Text = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub Command4_Click()
Label4.Caption = "/"
Text3.Text = Val(Text1.Text) / Val(Text2.Text)
End Sub
4.3 常用控件
4.3.1 图形控件
VB中的图形控件分为 图片框 (PictureBox)、图像框
(Image)、直线控件和形状控件。图形控件的使用能 美化界面和增加界面的趣味性 。
4.3.1.1图片框图片框控件可以用来显示,bmp,.ico,.jpeg,
.jpg,,gif等图片类型的文件,且可以 绘制 图形、显示文本或计算结果,还 可以作为容器放置其它控件。
4.3.1 图形控件
图片框
常用属性
Align,设置图片框在窗体中的显示方式,语法格式:
对象名,Align ={0 | 1 | 2 | 3 | 4 }
属性值 说 明
0-None 默认值,表示无特殊显示
1-Align Top 表示图片框停靠在窗体上端并与窗体一样宽
2-Align Bottom 表示图片框停靠在窗体底部并与窗体一样宽
3-Align Left 表示图片框停靠在窗体左端并与窗体一样高
4-Align Right 表示图片框停靠在窗体右端并与窗体一样高
4.3.1 图形控件
图片框
常用属性
AutoSize:设置控件是否能自动调整大小以适应图片内容。 语法格式:
其中,
– 属性值为 False(默认值)表示图片框 不能自动改变大小以适应其中的图形,保持原始尺寸,
如果图形比图片框大,则超出的部分将被剪切掉;
– 属性值为 True表示图片框 可以自动调整图片框大小以显示图片的全部内容 。
对象名,AutoSize ={True | False}
4.3.1 图形控件
图片框
常用属性
Picture:设置图片框控件中显示的图片。
在界面设计时,可直接利用属性窗口中的
Picture属性设置相应图片的目录装入图片;在程序运行时,可使用 LoadPicture函数装载图片,语法格式为:
对象名,Picture = LoadPicture("图形文件名 ")
4.3.1 图形控件
图片框
图片框控件的事件图片框常用的事件是 Click和 DblClick,分别是单击和双击图片框时发生的事件。
图片框控件的方法图片框常用的方法有 Print,Cls,Move和 SetFocus。同时,
图片框支持 Pset,Point,Circle和 Line等绘图方法 。
装载图片装载图片有三种方法:
– 方法 1:在界面设计时,通过 Picture属性装载图片,在
Picture属性中选择需要装入的图形文件名。
– 方法 2:在程序运行期间,用 LoadPicture函数装载。
– 方法 3:在界面设计时,利用菜单中的“编辑” →,粘贴”
功能,将剪贴板中的图片粘贴到图形控件中。
4.3.1 图形控件
图片框
卸载图片
语法格式:
保存图片
SavePicture函数的功能是用来保存在图片框中处理过的图像。语法格式:
例如,SavePicture Picture1.Image,"aa.bmp"
[对象,]Picture=LoadPicture(,” )
SavePicture 对象名,Image,保存文件名
例:设计一个窗体,通过命令按钮单击实现两个图片框控件中图片之间的切换。
4.3.1 图形控件界面设计和运行结果
4.3.1 图形控件对象 属性 属性值
CommandButton Name Command1
Caption 交换
PictureBox Name Picture1Picture d:\6.jpg
PictureBox Name Picture2Picture d:\7.jpg
属性设置如下表:
4.3.1 图形控件代码编写如下
Private Sub Command1_Click()
Picture1.Picture = Picture2.Picture
Picture2.Picture = LoadPicture("d:\6.jpg")
End Sub
4.3.1 图形控件
4.3.1.2 图像框
图像框也是用来显形图片,如,bmp,.ico、
.jpeg,,jpg 图片格式。其装载显示图片的速度较图片框快 。
常用属性
Appearance:设置图像框在运行时是否以 3D效果显示,
Picture:设置图像框控件中显示的图形。图像框的
Picture属性与图片框使用方法相同,既可以通过属性窗口设置图像框的 Picture属性来添加图片,也可以通过 LoadPicture函数来装载图片。
4.3.1 图形控件
图像框
常用属性
Stretch:设置是否调整图形的大小以适应图像框控件。
图像框没有 Autosize属性,但可以使用 Stretch属性来拉伸图像大小,使其适应图像框的大小。
其中,
属性值为 False(默认值)表示当图形载入时,图像框本身调整大小,使得图形可以填满图像框;
属性值为 True表示当图形载入时,图形自动按照图像框的大小来调整大小,使图形填满整个图像框。
4.3.1 图片控件
图像框
图像框控件的事件和方法
图像框常用的事件和方法都不多。常用的事件有,DbClick,Click,MouseDown,MouseMove、
MouseUp。常用的方法有,Move方法 。
图片框和图像框的区别:
图片框 可以作为“容器”,可以存放其他控件,
图像框 不可以;
图片框 可以通过 Print方法输出文本也可以用绘图方法绘制图形,图像框 不可以;
图像框 比 图片框 占用内存少,显示速度快,如只显示图片则优先使用图像框;
图片框 有 Autosize属性,而 图像框 有 Stretch属性
例:设计一个窗体,说明图像框中 Stretch属性的应用。
4.3.1 图片控件界面设计
4.3.1 图片控件属性设置如下,
对象 属性 属性值
CommandButton Name Command1Caption 交换
PictureBox Name Picture1
PictureBox Name Picture2Visible False
Image Name Image1Stretch True
4.3.1 图片控件代码编写如下
Private Sub Form_Load()
Picture1.Picture =
LoadPicture("C:\JadeVista.jpg")
Image1.Picture = LoadPicture("C:\风景 06.jpg")
End Sub
Private Sub Command1_Click()
Picture2.Picture = Picture1.Picture
Picture1.Picture = Image1.Picture
Image1.Picture = Picture2.Picture
End Sub
4.3 常用 控件
4.3.2 框架和选择控件
4.3.2.1 框架( Frame)
在 VB中,可以作为其他对象容器的有窗体、图片框和框架。框架的主要作用是将窗体上的控件进行分组,让窗体界面整齐。
框架控件的属性
Caption:设置框架的标题,说明框架的功能。
Enabled:设置框架及框架内控件是否可用。属性值为 True(默认值)表示框架可用,属性值为
False则表示框架和其上的控件不可用。
Visible:设置框架及框架内控件是否可见 。
4.3.2 框架和选择控件
框架( Frame)
框架控件的事件框架的常用事件是 Click,在框架上单击鼠标时触发。
向框架添加控件的方法
先框架后控件:先添加一个框架,在框架处于激活状态时,在工具栏中选择要添加的控件添加到框架中。
先控件后框架:即添加窗体中已存在的控件到框架中。先添加一个框架,然后将窗体中要添加的控件剪贴到框架中。
判断一个控件是否已添加到框架上,主要是看移动框架时该控件是否也跟随一起移动。
4.3.2 框架和选择控件
4.3.2.2 单选按钮( OptionButton)
单选按钮控件是多选一控件,只能从多个选项中选择一个,各选项间的关系是互斥的,同一时刻只能选择同一组中的一个单选按钮。
单选按钮控件的属性
Caption:设置单选按钮的标题。
Alignment:设置单选按钮中文字的对齐方式。
其中:
– 属性值为 0(默认值)表示靠左对齐,圆形按钮位于控件的左边,文字显示在右边;属性值为 1表示靠右对齐。
对象名,Alignment={0 | 1}
4.3.2 框架和选择控件
单选按钮( OptionButton)
单选按钮控件的属性
Value:设置单选按钮在执行时是否被选中。语法格式:
其中:
属性值为 False(默认值)表示单选按钮处于未选中状态;为 True表示单选按钮被选中。在一组单选按钮控件中,有且只有一个单选按钮能被选中,
该控件的 Value值变成 True的同时,其他控件的
Value属性将自动变成 False。
对象名,Value={True | False}
4.3.2 框架和选择控件
单选按钮( OptionButton)
单选按钮控件的属性
Style:设置单选按钮的显示方式。语法格式:
其中:
属性值为 0(默认值)表示单选按钮用标准方式
( Standard)显示;为 1表示单选按钮用图形方式
( Graphical)显示。此属性与命令按钮的 Style
属性相似。
对象名,Style={0 | 1}
4.3.2 框架和选择控件
单选按钮( OptionButton)
单选按钮控件的属性
Picture:给单选按钮装载图形。
注意:只有在 Style属性设置为图形方式时
Picture属性才有效。
4.3.2 框架和选择控件
单选按钮( OptionButton)
单选按钮控件的事件
单选按钮的常用事件为 Click,当用户在一个单选按钮上单击时触发。
4.3.2 框架和选择控件
例 4.9 设计一个窗体选择不同字体、不同字号的选项,
文本框的文字会产生相应的变化。
界面设计 属性设置见书
4.3.2 框架和选择控件
代码设计:
Private Sub Option1_Click()
If Option1.Value = True Then Label1.FontName = "宋体 "
End Sub
Private Sub Option2_Click()
If Option2.Value = True Then Label1.FontName = "隶书 "
End Sub
Private Sub Option3_Click()
If Option3.Value = True Then Label1.FontName = "黑体 "
End Sub
4.3.2 框架和选择控件
代码设计:
Private Sub Option4_Click()
If Option4.Value = True Then Label1.FontSize =30
End Sub
Private Sub Option5_Click()
If Option5.Value = True Then Label1.FontSize = 40
End Sub
Private Sub Option6_Click()
If Option6.Value = True Then Label1.FontSize = 50
End Sub
4.3.2 框架和选择控件
运行结果
4.3.2 框架和选择控件
4.3.2.3 复选框( CheckBox)
复选框的功能类似于单选按钮,不同的是:一组单选按钮中只允许选定其中的一个;而在组复选框中却可以选择多个,即复选框的功能是独立的,各选项间不互斥。
复选框控件的属性
Caption:设置复选框标题。
Value:设置复选框在执行时的状态。语法格式:
对象名,Value={0 | 1 | 2}属性值 说 明
0 (默认值 )未选中,此时复选框前面小方块没有,√,标志
1 选中状态,此时复选框前面小方块带有,√,标志
2 处于禁止选择状态,复选框呈现,√,标志但以灰色显示。
4.3.2 框架和选择控件
复选框( CheckBox)
复选框控件的属性
Style:设置复选框的显示方式。
Picture:用于给图形复选框装载图形。
注意:只有在 Style属性设置为图形方式时
Picture属性才有效。
4.3.2 框架和选择控件
复选框( CheckBox)
复选框控件的事件和方法
复选框的常用事件为 Click,当用户在一个复选框上单击鼠标按钮时发生。 复选框 不支持鼠标双击事件,系统把一次双击解释为两次单击事件。
复选框支持的方法较少,常用的主要有:
SetFoucs,Move。
复选框应用
设计一个窗体,说明复选框的基本应用方法。
界面设计对象 属性 属性值
Label Name Label1Caption 我的爱好是
CheckBox Name Check1Caption 音乐
CheckBox Name Check2Caption 足球
CheckBox Name Check3Caption 看书
CheckBox Name Check4Caption 购物
CommandButton Name Command1Caption 确定
CommandButton Name Command2Caption 清除
4.6 框架和选择控件代码设计:
Private Sub Command1_Click()
a = Check1.Caption
b = Check2.Caption
c = Check3.Caption
d = Check4.Caption
If Check1.Value = 1 Then Label1.Caption = Label1.Caption & " " & a
If Check2.Value = 1 Then Label1.Caption = Label1.Caption & " " & b
If Check3.Value = 1 Then Label1.Caption = Label1.Caption & " " & c
If Check4.Value = 1 Then Label1.Caption = Label1.Caption & " " & d
End Sub
Private Sub Command2_Click()
a = ""
b = ""
c = ""
d = ""
Label1.Caption = "我的爱好是,"
End Sub
4.3.3 列表框和组合框
列表框和组合框都是通过列表的形式显示多个选项,
供用户来选择。
列表框 是一个为用户提供选择的列表,用户可从中单击选取自己所需的一个或多个选项。如果选项太多,超出列表框设计的大小时,不能一次全部显示,
VB会自动加上垂直滚动条。
组合框 的功能与列表框相近,其主要特点是它综合了列表框和文本框的特性。在程序运行时,用户既可以在组合框中选择已有的选项,选中的内容自动放入文本框中;又能够在文本框中直接输入所需的内容。
列表框控件 组合框控件
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
List:设置列表框中列表项的内容。 List属性值是一个一维数组,
每个数组元素是列表框中的一个选项。
其中:
– 该属性既可以在设计时通过属性窗口设置,又可在代码窗口中设置;
– 属性窗口设置时,每添加一个列表项,按 Ctrl+Enter键可以换行继续添加下一个列表项,直接按 Enter键表示添加结束;
– 代码窗口设置时,采用如下格式:
例如:
List1.list(0)= "武汉 " '列表框的第一项
List1.list(2)= "北京 " '列表框的第三项对象名,list(下标 ) = 字符串注意:
List数组的第一个元素的下标是 0,即 List(0)为第一个元素,往后依次为 List(1),List(2),List(3)?,如果 List数组中有 n个元素,则最后一个列表项对应的数组元素为 List(n-1)。
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
ListCount:表示当前列表框中选项的总数。
注意:
任何列表框中的选项从 0开始,到 ListCount-1结束,通常和 List属性一起使用,此属性只能在程序中引用。
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
ListIndex:设置和返回选中的选项,即下标序号。如果没有任何选项选中,其值为 -1。
Sorted:设置列表框中的选项是否按字母表顺序排序。语法格式:
其中:
– 属性值为 True表示列表框中的选项按字母表顺序排序;属性值为
False则表示列表框中的选项不按字母表顺序排序。
– Sorted属性必须在属性窗口时设置,在运行时是只读的。
list1.sorted=true 按字母顺序排列
list1.sorted=false按加入时的顺序排列如果选中 列表框 的第五个元素,则 ListIndex值为多少?
对象名,Sorted={True | False}
4.7 列表框和组合框
列表框控件
列表框控件的属性
Text:返回或设置最后选中的列表项的文本内容。只读属性,不能直接修改其值,用于获取选定列表项的内容。
MultiSelect:设置该列表框是否能选择多项。语法格式:
对象名,MultiSelect ={0 | 1 | 2}
属性值 说 明
0 (None) 单选,一次只能选择一个选项
1 (Simple) 简单多选,鼠标单击或按 Space键选取或取消选项
2(Extended)
高级多选,用 Ctrl键与鼠标单击来选中或取消不连续的选项;用 Shift键与鼠标单击来选中或取消连续的选项注意:
若选择多项,则 ListIndex和 Text的属性只表示最后一次所选择的选项值 。
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
SelCount:表示列表框中所选择的选项的数目。
通常与 Selected一起使用,以处理控件中所选的选项。
注意:
注意,SelCount属性使用的前提是 MultiSelect属性设置为 1或 2。
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
Selected:与 List数组中的各个元素相对应的一个数组,记录 List数组中每个选项是否被选取。例如,
如果 List(1)被选取,则 Selected(1)的值为 True,
如果 List(1)未被选取,则 Selected(1)的值为
False。
如,list1.selected(0)=true表示选中第一项
4.3.3 列表框和组合框
列表框控件
列表框控件的属性
Style:设置列表框控件的外观。
语法格式:
属性值 说 明
0 (标准样式 )不带复选框
1 (复选框样式 )当复选框中出现,√,时表示选中该选项对象名,Style ={0 | 1}
4.3.3 列表框和组合框
列表框控件
列表框控件的事件
Click事件:在列表框获得焦点时用户单击某个选项,
或按下方向键,或按下选项的第一个英文字母,会触发该事件。
DblClick事件:双击某个选项会触发该事件。
列表框控件的方法
AddItem:向列表框中添加列表项。语法格式:
对象名,AddItem 选项字符串 [,索引值 ]
其中:
选项字符串 是要添加到列表框中的字符表达式;
索引值是 可选参数,用来指定新选项在列表框中的插入位置。若索引值为 0,则插入到第一个选项位置;若索引值省略,当 Sorted
属性设置为 True时,新选项将添加到恰当的排序位置,当 Sorted属性设置为 False时,新选项将添加到现有列表项的末尾。
例如,list1.additem "中国 "
list1.additem "美国 ",2
4.3.3 列表框和组合框
列表框控件
列表框控件的方法
RemoveItem:从列表框中删除指定选项。语法格式:
例如,list1,RemoveItem,0
其中:
– 索引值用来指定要删除的选项在列表框中的位置,每次只能删除一个选项。
Clear:清除列表框中的全部选项。语法格式:
对象名,RemoveItem 索引值对象名,Clear
4.3.3 列表框和组合框
设计一个窗体,要求:可以通过在列表框 List1中选择,
然后单击中间的命令按钮在列表框 List2中执行相应的操作。
界面如图所示,
属性设置见书
4.3.3 列表框和组合框代码设计:
Private Sub Form_Load()
List1.AddItem "苹果 "
List1.AddItem "香蕉 "
List1.AddItem "芒果 "
List1.AddItem "西瓜 "
List1.AddItem "哈密瓜 "
List1.AddItem "葡萄 "
List1.AddItem "椰子 "
List1.AddItem "榴莲 "
List1.AddItem "菠萝 "
List1.AddItem "蟠桃 "
End Sub
Private Sub Command1_Click()
End Sub
Private Sub Command2_Click()
End Sub
Private Sub Command3_Click()
End Sub
Private Sub Command4_Click()
End Sub
List2.AddItem List1.Text
List2.RemoveItem List2.ListIndex
List2.Clear
End
4.3.3 列表框和组合框
4.3.3.2 组合框
组合框 (ComboBox)是由文本框 (TextBox)与列表框
(listBox),组合”而成的控件。用户可以通过在文本框输入新文本内容或在列表框中单击列表选项选择已有内容。
组合框的形式有三种,下拉组合框 (默认方式 ),简单组合框,下拉列表框 。
组合框控件的属性
Style:功能是设置组合框的显示类型,在运行时为只读的。
对象名,Style={0 | 1 | 2}
属性值 说 明
0 (默认值)下拉式组合框,包括一个下拉式列表和一个文本框,可以输入文本或从下拉列表中选择列表项
1 简单组合框,包括一个文本框和一个无法下拉的列表,可以输入文本或选择列表项。
2 下拉式列表框,包括一个下拉式列表和一个文本框,但只能选择列表项,不能在文本框中输入
4.3.3 列表框和组合框
组合框
组合框控件的事件
Change:当组合框内容改变时发生。
Click:当用户在一个组合框上单击鼠标按钮时发生。
组合框控件的方法
AddItem:用来向组合框中添加选项。
RemoveItem:从组合框中删除一个选项。
Clear:清除组合框的所有内容。
4.3.3 列表框和组合框
单击中间的命令按钮在文本框中显示选择的内容,如果需要的城市组合框中没有列出,可以通过组合框来进行添加
界面如图所示,
4.3.3 列表框和组合框代码设计:
Private Sub Form_Load()
Combo1.AddItem "武汉 "
Combo1.AddItem "北京 "
Combo1.AddItem "西安 "
Combo1.AddItem "重庆 "
Combo1.AddItem "长沙 "
Combo1.AddItem "海南 "
Combo1.AddItem "天津 "
Combo1.AddItem "南京 "
Combo1.AddItem "杭州 "
End Sub
Private Sub Combo1_Change()
End Sub
Private Sub Combo1_Click()
End Sub
Combo1.AddItem Combo1.Text
Text1.Text = Combo1.Text
4.3 常用控件
4.3.4 滚动条滚动条通常用来浏览内容或确定位置,也可以作为数据输入的工具。在实际应用中,滚动条也常用作数量、速度的指示器,
如在一些多媒体应用中用来控制音量、画面的滚动速度等。
滚动条分为 水平滚动条( HScroll) 和 垂直滚动( VScroll)
两种类型。
滚动条的结构
1,两端各有一个滚动箭头,在滚动条上有一个能够移动的小方块,
叫做滚动滑块;
2,水平滚动条的最小值在最左边,最大值在最右边,从左向右移动时,值依次递增;
3,垂直滚动条的最小值在最上边,最大值在最下边,从上向下移动时,值依次递增。
4.3.4 滚动条
滚动条控件的属性
Max:设置滚动条的最大值。最大值为滚动滑块在右(或下)
端时的值,其值介于 -32768到 32767之间,Max的默认值为
32767。
Min:设置滚动条的最小值。最小值为滚动滑块在左(或上)
端时的值,Min的默认值为 0。
Value:表示滚动滑块所在位置对应的值。如果用户拖动滑动块,Value属性值随之改变,它是滚动滑块的位置与最大值、最小值换算而得的结果,取值范围为 Min~ Max。
LargeChange:设置鼠标单击滚动条中间的空白处时,每次增加和减少的数值。系统默认的数值为 1,取值范围为 1~
32767,用户可以自己修改
SmallChange:设置鼠标单击滚动条两边的箭头时,每次增加和减少的数值。系统默认的数值为 1,取值范围为 1~
32767,用户可以自己修改。
4.3.4 滚动条
滚动条控件的事件滚动条控件的常用事件有 Scroll事件 和 Change事件 。
Scroll(滑动)事件
单击滚动箭头或单击滚动条均不能触发该事件,
仅在移动滚动滑块时被触发。 一般可用该事件来跟踪滚动条的动态变化。
Change(变化)事件
单击滚动箭头、单击滚动条或移动滚动滑块时均可触发该事件。 一般可用该事件来获得移动后滚动条的最后值。
4.3.4 滚动条
利用水平滚动条和垂直滚动条的滚动,分别改变标签中文字的字体和颜色。
对象 属性 属性值
Label Name Label1Caption 滴水穿石
HScroll
Bar
Name HScroll1
Max 48
Min 8
VScroll
Bar
Name VScroll1
Max 3
Min 1
Label Name Label2Caption 字体颜色
Label Name Label3Caption 黑体
Label Name Label4
界面设计,
4.3.4 滚动条
Private Sub HScroll1_Change()
Label1.ForeColor = RGB(Rnd * 255,Rnd * 255,Rnd * 255)
End Sub
Private Sub VScroll1_Change()
Select Case VScroll1.Value
Case 1
Label1.Font = "黑体 "
Case 2
Label1.Font = "宋体 "
Case 3
Label1.Font = "隶书 "
End Select
End Sub
4.3.5 计时器
计时器是一个非常有用的控件,主要有两个功能:
1,用于在程序中监视和控制时间进程,即每隔一段固定的时间就有规律地执行一次相同的任务。如定时检测系统或控件的状态、控制控件的移动、设置时钟、倒计时、秒表等;
2,进行某种后台处理。
因为计时器控件在设计时可见,运行时隐藏,所以它在界面上的位置和大小无关紧要。但在后台每隔一定的时间,系统就会自动触发一次计时器事件。
4.3.5 计时器
计时器控件的属性
Enabled(响应)属性
功能:设置计时器控件是否开始计时。语法格式:
其中,属性值为 True(默认值)表示启动计时器开始计时;属性值为 False则表示暂停计时器的使用,待将
Enabled属性设置为 True时继续运行计时器。
Interval(间隔)属性
功能:设置两个计时器事件之间的时间间隔。
设置时以毫秒( ms)为单位,范围是 0~ 65 535ms,
系统初始值设置为 0。若希望每秒执行 n个计时器事件,则将 Interval属性的值设置为 1000/n。
当 Interval属性的值为 0时,则计时器无效。
对象名,Enabled={True | False}
对象名,Interval=数值
4.3.5 计时器
计时器的事件
计时器只有 Timer事件 。 Timer事件具有周期性,在每隔 Interval指定的时间间隔,就执行一次 Timer事件过程 。 在实际运用中,经常用 Timer事件来实现有规律的重复操作和简单的动画 。
注意:
计时器事件发生越频繁,响应事件所使用的处理器事件就越多,这将降低系统综合性能。因此,除非有必要否则不要设置过小的时间间隔。
4.3.5 计时器
设计一个窗体,运行窗体后,图片会不停地闪动。
界面设计,
对象 属性 属性值
Timer
Name Timer1
Enabled True
Timer1 100
PictureB
ox
Name Picture1
Picture1 D:\a003.bmp
属性设计,
Private Sub Timer1_Timer()
End Sub
Picture1.Visible = Not (Picture1.Visible)
4.3.5 计时器
运行窗体后,文本框,谁知盘中餐,粒粒皆辛苦 。,从右向左移动,每当文本框全部移出左边界时要求从右边界再次循环运行 。
界面设计,?属性设计,
对象 属性 属性值
Label
Name Label1
Caption 从右向左循环滚动
Timer
Name Timer1
Enabled True
Timer1 100
TextBo
x
Name Text1
Text 谁知盘中餐,粒粒皆辛苦
BackCol
or &H80000004&
MultiLi
ne True
4.3.5 计时器
Private Sub Timer1_Timer()
If Text1.Left + Text1.Width <= 0 Then
Text1.Left = Form1.Width
Text1.Left = Text1.Left - 100
End Sub
综合应用
单击下方不同的单选按钮,窗体中央的图片框则显示上方相应的图片。
界面设计,
综合应用对象 属性 属性值
PictureBox Name Picture1Picture F:\常用控件 \001.bmp
PictureBox Name Picture2Picture F:\常用控件 \002.bmp
PictureBox Name Picture3Picture F:\常用控件 \003.bmp
PictureBox Name Picture4Picture F:\常用控件 \004.bmp
PictureBox Name Picture5
属性设计,
综合应用
Private Sub Option1_Click()
Picture5.Picture = Picture1.Picture
End Sub
Private Sub Option2_Click()
Picture5.Picture = Picture2.Picture
End Sub
Private Sub Option3_Click()
Picture5.Picture = Picture3.Picture
End Sub
Private Sub Option4_Click()
Picture5.Picture = Picture4.Picture
End Sub