第三章 窗体和控件
普通高等教育 “ 十一五 ” 国家级规划教材
全 国 高 等 医 药 院 校 药 学 类 规 划 教 材
计算机程序设计(第二版)
第一节第一节 文本控件文本控件
目 录
第二节第二节 按钮控件
第三节第三节 单选按钮和复选框
沈
阳
药
科
大
学
计
算
计
教
研
室
沈
阳
药
科
大
学
计
算
计
教
研
室 第五节第五节 焦点和焦点和TabTab顺序顺序
第四节第四节 图形控件
控件学习的重点:
控件对象的三要素
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
引言
Visual BasicVisual Basic是一种是一种可视化可视化的高级程序设计语言,不但具的高级程序设计语言,不但具
有有所见即所得所见即所得的优点,而且还提供了大量的的优点,而且还提供了大量的WindowsWindows窗体控件窗体控件。。
只要我们熟练掌握了这些控件的使用,就可以轻松编写出具有只要我们熟练掌握了这些控件的使用,就可以轻松编写出具有
WindowsWindows风格的图形化界面的应用程序。风格的图形化界面的应用程序。
本章将介绍本章将介绍Visual BasicVisual Basic中最基本的几个标准控件,更中最基本的几个标准控件,更高高
级的复杂级的复杂控件将在控件将在第八章详细第八章详细介绍。介绍。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
文本控件
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
与文本有关的标准控件有两个与文本有关的标准控件有两个::
11. . 标签(标签(LabelLabel))
程序在运行模式程序在运行模式 (Run Mode)(Run Mode)下,用户不能编辑其内容。下,用户不能编辑其内容。
一般用做其它控件的功能提示说明或者显示程序的运行结果。一般用做其它控件的功能提示说明或者显示程序的运行结果。
22. . 文本框(文本框(TextBoxTextBox))
程序在运行模式程序在运行模式 (Run Mode)(Run Mode)下,用户可以编辑其显示内下,用户可以编辑其显示内
容容,从而实现,从而实现程序运行中的程序运行中的人机交互人机交互。。一般用做输入信息。一般用做输入信息。
标签
文本框
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
标签标签(Label)(Label)
除前面讲过的常用属性除前面讲过的常用属性NameName,,TopTop,,LeftLeft,,HeightHeight,,
WidthWidth,,VisibleVisible,,FontFont外,标签还具有以下属性外,标签还具有以下属性::
(1) Caption((1) Caption(标题标题))
该属性用于设置标签中显示的文本。该文本信息既可以在该属性用于设置标签中显示的文本。该文本信息既可以在
设计模式下通过属性窗口设置,也可以在运行模式下通过修改设计模式下通过属性窗口设置,也可以在运行模式下通过修改
CaptionCaption属性来设置。属性来设置。
例如,下面语句可将标签的显示文本更改为例如,下面语句可将标签的显示文本更改为““消炎药品消炎药品””::
="="消炎药品消炎药品““
Caption属性是“标签”控件的默认属性,即下面的写法与上面的属
性赋值语句是一致的: Label1 = “消炎药品消炎药品”
注意:标签没有注意:标签没有TextText属性属性,这与下面讲到的文本框不同。,这与下面讲到的文本框不同。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(2) Alignment((2) Alignment(对齐方式对齐方式) )
用于设置标签中文本的对齐方式,有三种取值情况:用于设置标签中文本的对齐方式,有三种取值情况:
0 - Left Justify(0 - Left Justify(缺省缺省) ) 标签中的文本左对齐标签中的文本左对齐
1 - Right Justify 1 - Right Justify 标签中的文本右对齐标签中的文本右对齐
2 - Center 2 - Center 标签中的文本居中对齐标签中的文本居中对齐
(3) (3) BackStyle(BackStyle(背景风格背景风格))
该属性用于设置标签的背景风格,有两种取值情况:该属性用于设置标签的背景风格,有两种取值情况:
0 - Transparent 0 - Transparent 标签的背景为透明的,就像是在一块透标签的背景为透明的,就像是在一块透
明玻璃上书写文本一样,无论明玻璃上书写文本一样,无论BackColorBackColor设为什么颜色都不会设为什么颜色都不会
显示。显示。
1 – Opaque(1 – Opaque(缺省缺省) ) 标签的背景为非透明的,会遮挡标签后标签的背景为非透明的,会遮挡标签后
面的内容面的内容
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
标签背景设置为透明:标签背景设置为透明:
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(4) BorderStyle((4) BorderStyle(边框风格边框风格))
该属性用于设置标签的边框风格,有两种取值情况:该属性用于设置标签的边框风格,有两种取值情况:
0 – None(0 – None(缺省缺省) ) 标签无边框标签无边框
1 - Fixed Single 1 - Fixed Single 标签有边框标签有边框
(5) Appearance((5) Appearance(外观外观))
该属性用于设置标签外观是否具有立体的效果,有两种取该属性用于设置标签外观是否具有立体的效果,有两种取
值情况:值情况:
0 - Flat 0 - Flat 标签为平面效果标签为平面效果
1 - 3D(1 - 3D(缺省缺省) ) 标签为立体效果标签为立体效果
注意:显示注意:显示3D3D效果的前提是将效果的前提是将BorderStyleBorderStyle设置为设置为11
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(6) AutoSize((6) AutoSize(自动调整大小自动调整大小))
该属性用于设置标签的大小是否随标题文本大小的改变而改变,该属性用于设置标签的大小是否随标题文本大小的改变而改变,
有两种取值情况:有两种取值情况:
True True 标签的大小随标题文本大小的改变而改变标签的大小随标题文本大小的改变而改变
False(False(缺省缺省) ) 当标题太长时,只显示其中的一部分内容当标题太长时,只显示其中的一部分内容
(7)WordWrap ((7)WordWrap (决定标签的大小是否与文字保持自动调整决定标签的大小是否与文字保持自动调整))
标签上显示的内容要是想分多行显示的话,要设置标签上显示的内容要是想分多行显示的话,要设置WordWrapWordWrap属属
性为性为True,True,并且该属性生效必须设置并且该属性生效必须设置AutoSizeAutoSize为为TrueTrue,否则不可以。,否则不可以。
总结:
标签Caption属性显示的内容控制换行显示
= “….” & vbCrlf & “….”
= “….” & Chr(13) & Chr(10) & “….”
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
文本框文本框(TextBox)(TextBox)
文本框还具有以下属性文本框还具有以下属性::
((11))Text(Text(文本文本) ) 该属性用于存放文本框中的文本信息该属性用于存放文本框中的文本信息
包括在设计模式下对其赋值,或者在运算模式下,利用包括在设计模式下对其赋值,或者在运算模式下,利用
语句对其赋值,如:语句对其赋值,如: = “ = “小鼠小鼠””
其中,该属性为文本框其中,该属性为文本框Text1Text1的默认属性,所以在对文本的默认属性,所以在对文本
框的该属性赋值时,可省略框的该属性赋值时,可省略TextText不写,而直接写成:不写,而直接写成:
Text1 = “Text1 = “小鼠小鼠””
和前面讲的标签不同,和前面讲的标签不同,文本框没有文本框没有CaptionCaption属性属性。。
((22)) MaxLength(MaxLength(允许输入的最大字符数允许输入的最大字符数))
注意:注意:MaxLength=0MaxLength=0时,表示无字符个数限制时,表示无字符个数限制((可以接收可以接收
Visual BasicVisual Basic系统规定的最大字符数系统规定的最大字符数32K)32K)
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
注意:注意:在在MultiLineMultiLine为为TrueTrue的前提下,强制文本框内文本换行的前提下,强制文本框内文本换行
的方法为:的方法为:
设计模式下,在设计模式下,在TextText属性中相应位置按下属性中相应位置按下Ctrl+EnterCtrl+Enter
运行模式下,为运行模式下,为TextText属性赋值时相应位置加入属性赋值时相应位置加入“ vbCrLf ”“ vbCrLf ”
例如:例如:="="抗癌抗癌" + vbCrLf + "" + vbCrLf + "新药物新药物""
(4) PassWordChar((4) PassWordChar(文本框中用什么字符替代显示文本框中用什么字符替代显示))
该属性一般用作口令的输入。该属性为空值时,表示显该属性一般用作口令的输入。该属性为空值时,表示显
示原始信息。示原始信息。
注意:注意:虽然虽然文本框中的数据没有真实地显示在用户面前,但却
保存着真实的值。
(3) MultiLine((3) MultiLine(多行显示多行显示))
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(5) ScrollBars((5) ScrollBars(滚动条滚动条))
四种取值情况:
0 - None(缺省) 文本框中没有滚动条
1 - Horizontal 只有水平滚动条
2 - Vertical 只有垂直滚动条
3 - Both 同时具有水平和垂直滚动条
注意:注意:
只有当MultiLine属性设置为True时,ScrollBars才生效。
文本框中只要出现水平滚动条,那么文本框的自动换行功
能将不生效,只能强制换行。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(6) Locked((6) Locked(锁定锁定))
注意:注意:当当Locked=TrueLocked=True时文本框外观无变化、可以接收焦时文本框外观无变化、可以接收焦
点,用户不能修改文本框内容,只能通过代码修改点,用户不能修改文本框内容,只能通过代码修改TextText属性。属性。
(7) Enabled((7) Enabled(激活可操作激活可操作))
注意:注意:EnabledEnabled和和LockedLocked并不相同。并不相同。EnabledEnabled为为FalseFalse时,时,
外观变灰、不能接收焦点、用户不能编辑文本内容、可以通过外观变灰、不能接收焦点、用户不能编辑文本内容、可以通过
代码修改代码修改TextText属性。属性。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(8)(8) SelStart(SelStart(从第几个字符从第几个字符后后开始选择开始选择))、、
SelLength ( SelLength (选中了多少个字符选中了多少个字符) )
SelText( SelText(选中的具体文本内容选中的具体文本内容))
应用举例:应用举例:文本控件文本控件\\文本框文本框\\文本框中字符的选择操作文本框中字符的选择操作.
扩展练习:文本的复制
当从文本框Text1 中任意选择三个字符粘
贴到文本框Text2中时,系统是如何知道在文本框Text1中
选择的什么字符呢?
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E6%A1%86%E4%B8%AD%E5%AD%97%E7%AC%A6%E7%9A%84%E9%80%89%E6%8B%A9%E6%93%8D%E4%BD%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E6%96%87%E6%9C%AC%E5%A4%8D%E5%88%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
文本框的常用事件和方法文本框的常用事件和方法::
(1) Change(1) Change事件事件
运行模式下无论通过什么方式(输入或者删除字符),只运行模式下无论通过什么方式(输入或者删除字符),只
要文本框的内容发生改变,就会触发要文本框的内容发生改变,就会触发ChangeChange事件。事件。
应用举例:应用举例:通过通过ChangeChange事件即时计算圆的面积事件即时计算圆的面积.
(2) KeyPress(2) KeyPress事件事件
运行模式下,在文本框中按下键盘上某个具有字符编辑功运行模式下,在文本框中按下键盘上某个具有字符编辑功
能的按键后,能的按键后,在文本框中的内容改变前,会触发在文本框中的内容改变前,会触发KeyPressKeyPress事事
件。件。
应用举例:应用举例:通过通过KeyPressKeyPress事件使输入字符均为大写事件使输入字符均为大写.
说明:说明:aa的的ASCIIASCII为为9797,,zz的的ASCIIASCII为为122122,, AA的的ASCIIASCII为为6565
,, ZZ的的ASCIIASCII为为90, 90, 00的的ASCIIASCII为为.回车的回车的ASCIIASCII为为.
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87Change%E4%BA%8B%E4%BB%B6%E5%8D%B3%E6%97%B6%E8%AE%A1%E7%AE%97%E5%9C%86%E7%9A%84%E9%9D%A2%E7%A7%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87KeyPress%E4%BA%8B%E4%BB%B6%E4%BD%BF%E8%BE%93%E5%85%A5%E5%AD%97%E7%AC%A6%E5%9D%87%E4%B8%BA%E5%A4%A7%E5%86%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
总结:
KeyPress事件发生在文本框中的内容改变之前,
当文本框内容改变后会触发Change事件 (当在文本框
中按下了某个字符键,在这个字符没有显示在文本框时
就会触发KeyPress事件,然后字符显示在文本框,然后
触发change事件)。当执行过程理解了之后,这两个事
件各自执行完之后文本框中的内容是什么就很容易理解
了。
第一节 文本控件
文本框的KeyPress事件与Change事件举例
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
(3) GotFocus(3) GotFocus事件事件
运行模式下无论通过什么方式,运行模式下无论通过什么方式,只要光标只要光标焦点焦点从其它控件进从其它控件进
入该文本框就会触发入该文本框就会触发GotFocusGotFocus事件事件。。
(4) (4) LostFocusLostFocus事件事件
运行模式下无论通过什么方式,运行模式下无论通过什么方式,只要光标焦点从只要光标焦点从该该文本框移文本框移
走就会触发走就会触发LostFocusLostFocus事件事件。。通常用来验证输入数据的合法性。通常用来验证输入数据的合法性。
应用举例:应用举例:通过通过LostFocus LostFocus 事件判断半径的合法性事件判断半径的合法性.
(5) (5) SetFocusSetFocus方法方法
功能是功能是在运行模式下通过代码在运行模式下通过代码将光标焦点移动到指定的文本将光标焦点移动到指定的文本
框中框中,语法为:,语法为:
[[对象名称对象名称.]SetFocus.]SetFocus。。
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
%E6%96%87%E6%9C%AC%E6%8E%A7%E4%BB%B6/%E6%96%87%E6%9C%AC%E6%A1%86/%E9%80%9A%E8%BF%87LostFocus%20%E4%BA%8B%E4%BB%B6%E5%88%A4%E6%96%AD%E5%8D%8A%E5%BE%84%E7%9A%84%E5%90%88%E6%B3%95%E6%80%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第一节 文本控件
在Text1的LostFocus事件
如果Text1的文本内容不是数值则
弹出错误提示信息
否则
如果Text1的文本内容是负数则
弹出错误提示信息
If 不是数值 then
MsgBox “XX”
else
If 是负数 then
MsgBox “XX”
End if
End if
If IsNumeric() =False then
MsgBox “非数值错误!请重新输入”
else
If <0 then
MsgBox “所输入的半径无效,请输入非负的数值!”
End if
End if
是否需要继续完善?
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第二节 按钮控件
按钮控件
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
按钮控件
Visual Basic中的按钮控件是命令按钮,它可能是
Visual Basic应用程序中最常用的控件,提供了用户与应用
程序交互最简便的方法。
按钮
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第二节 按钮控件
命令按钮命令按钮(Command Button)(Command Button)
除前面讲过的常用属性外,命令按钮还具有以下属性除前面讲过的常用属性外,命令按钮还具有以下属性::
(1) Caption((1) Caption(标题标题))
该属性用于设置命令按钮上显示的文本,用以标明该命令该属性用于设置命令按钮上显示的文本,用以标明该命令
按钮的功能。按钮的功能。
命令按钮的热键设置命令按钮的热键设置::在在CaptionCaption属性中将某个字母的前属性中将某个字母的前
面添加一个面添加一个““&”&”字符字符,程序运行时该字母下就会出现一个下,程序运行时该字母下就会出现一个下
划线,此时利用鼠标单击该按钮与按下划线,此时利用鼠标单击该按钮与按下ALT+ALT+该字母的功能是该字母的功能是
等价的,我们把等价的,我们把ALT+ALT+该字母称为该命令按钮的热键。该字母称为该命令按钮的热键。
命令按钮命令按钮NameName属性和属性和CaptionCaption属性的区别(属性的区别(应用举例应用举例):):
NameName属性对开发者有意义,用来在代码中区分不同对象属性对开发者有意义,用来在代码中区分不同对象
CaptionCaption属性对使用者有意义,说明对象的用途属性对使用者有意义,说明对象的用途
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE%E7%9A%84Name%E5%B1%9E%E6%80%A7%E5%92%8CCaption%E5%B1%9E%E6%80%A7%E7%9A%84%E5%8C%BA%E5%88%
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE%E7%9A%84Name%E5%B1%9E%E6%80%A7%E5%92%8CCaption%E5%B1%9E%E6%80%A7%E7%9A%84%E5%8C%BA%E5%88%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第二节 按钮控件
(2) Default ((2) Default (默认对象或者说默认的确认功能按钮默认对象或者说默认的确认功能按钮) ) 例子例子
当一个命令按钮的当一个命令按钮的DefaultDefault属性设置为属性设置为TrueTrue时,如果目前时,如果目前焦焦
点点没有在其它命令按钮上没有在其它命令按钮上,那么按键盘上的回车键与单击该命,那么按键盘上的回车键与单击该命
令按钮的作用相同。令按钮的作用相同。在一个窗体中,只允许有一个命令按钮的在一个窗体中,只允许有一个命令按钮的
DefaultDefault属性被设置为属性被设置为TrueTrue。。
(3) Cancel ((3) Cancel (默认的取消功能按钮默认的取消功能按钮))
当一个命令按钮的当一个命令按钮的CancelCancel属性设置为属性设置为TrueTrue时,时,无论目前焦无论目前焦
点在什么地方点在什么地方,按键盘上的,按键盘上的EscEsc键与单击该命令按钮的作用相键与单击该命令按钮的作用相
同。同。在一个窗体中,只允许有一个命令按钮的在一个窗体中,只允许有一个命令按钮的CancelCancel属性被设属性被设
置为置为TrueTrue。。
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/xx%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/xx%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第二节 按钮控件
(4) Style ((4) Style (外观风格外观风格) )
该属性用于设置命令按钮的外观风格。有两种取值情况:该属性用于设置命令按钮的外观风格。有两种取值情况:
0 - Standard0 - Standard标准样式标准样式((缺省缺省) ) 命令按钮上只能显示文本内命令按钮上只能显示文本内
容容(Caption(Caption属性属性))。。
1 - Graphical1 - Graphical图形格式图形格式 命令按钮上既可以显示文本内容,命令按钮上既可以显示文本内容,
又可以显示图形又可以显示图形
(5) Picture ((5) Picture (外观图片外观图片))
StyleStyle属性为属性为11时,命令按钮上显示的图片。加载方法详见时,命令按钮上显示的图片。加载方法详见
PictureBoxPictureBox。。
(6) ToolTipText ((6) ToolTipText (工具提示工具提示) ) 例子例子
在运行状态下,当将鼠标停在某个按钮上时,会出现在运行状态下,当将鼠标停在某个按钮上时,会出现文字文字
提示说明该按钮的作用。一般和提示说明该按钮的作用。一般和PicturePicture结合使用。结合使用。
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/tooltiptext%E5%B1%9E%E6%80%
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/tooltiptext%E5%B1%9E%E6%80%
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/tooltiptext%E5%B1%9E%E6%80%
%E5%91%BD%E4%BB%A4%E6%8C%89%E9%92%AE/tooltiptext%E5%B1%9E%E6%80%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第二节 按钮控件
命令按钮常用的事件命令按钮常用的事件
命令按钮最常用的事件是单击(命令按钮最常用的事件是单击(ClickClick)事件)事件,说明,说明
((11)命令按钮不支持)命令按钮不支持DblClickDblClick事件。事件。
((22)触发)触发ClickClick事件的方法有:事件的方法有:
a) a) 用鼠标单击该命令按钮。用鼠标单击该命令按钮。
b) b) 用用TabTab键将焦点移动到该命令按钮上,击键盘上的空格键将焦点移动到该命令按钮上,击键盘上的空格
键键((或回车键或回车键))。。
c) c) 利用利用CaptionCaption属性中设定的热键。属性中设定的热键。
d) d) 对于对于CancelCancel属性为属性为TrueTrue的按钮,按下键盘上的的按钮,按下键盘上的EscEsc键。键。
e) e) 对于对于DefaultDefault属性为属性为TrueTrue的按钮,当焦点不在其它命令按的按钮,当焦点不在其它命令按
钮上时,按下键盘上的回车键。钮上时,按下键盘上的回车键。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
名称 用途
单选框OptionButton 用户只能选择一项
复选框CheckBox 用户可以选择一个或者多个选项
列表框 ListBox 用户可从中进行选择的滚动列表
组合框ComboBox 一个可滚动选择列表附加一个文本编辑域
用户可以从表中选择或在编辑域中键入选择
框架 Frame(辅助) 分组(单选)、视觉上的分区、
总体的激活或者屏蔽
选择性控件
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
单选钮和复选框
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
当需要为用户提供几种候选项供用户选择时,最常用的两当需要为用户提供几种候选项供用户选择时,最常用的两
种控件就是:单选按钮种控件就是:单选按钮(OptionButton(OptionButton,又名收音机按钮,又名收音机按钮
RadioButton)RadioButton)和复选框和复选框(CheckBox)(CheckBox)。。单选按钮一组中只能选单选按钮一组中只能选
择一项,复选框一组中可以同时选择多项。择一项,复选框一组中可以同时选择多项。例题例题。。
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%8D%95%E9%80%89%E9%92%AE%E5%92%8C%E5%A4%8D%E9%80%89%E6%A1%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%8D%95%E9%80%89%E9%92%AE%E5%92%8C%E5%A4%8D%E9%80%89%E6%A1%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
重要属性重要属性
单选钮和复选框除了常用属性还具有以下重要属性单选钮和复选框除了常用属性还具有以下重要属性::
(1) Value ((1) Value (选定状态选定状态))
用来设置和标识单选按钮和复选框的选定状态用来设置和标识单选按钮和复选框的选定状态
单选按钮的单选按钮的ValueValue属性为布尔类型,有两种取值情况:属性为布尔类型,有两种取值情况:
False(False(缺省缺省) ) 表明该单选钮未被选中表明该单选钮未被选中
True True 表明该按钮处于被选中状态。表明该按钮处于被选中状态。
复选框复选框ValueValue属性为数值型,有三种取值情况:属性为数值型,有三种取值情况:
0 – Unchecked(0 – Unchecked(缺省缺省) ) 该复选项目前未被选中该复选项目前未被选中
1 – Checked 1 – Checked 该复选项目前已经被选中该复选项目前已经被选中
2 – Grayed 2 – Grayed 该复选框被禁止选择该复选框被禁止选择((灰色灰色))
通过通过ValueValue属性判断某侯选项是否被选中属性判断某侯选项是否被选中.
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E9%80%9A%E8%BF%87Value%E5%B1%9E%E6%80%A7%E5%88%A4%E6%96%AD%E6%9F%90%E4%BE%AF%E9%80%89%E9%A1%B9%E6%98%AF%E5%90%A6%E8%A2%AB%E9%80%89%E4%B8%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
(2) Alignment((2) Alignment(对齐方式对齐方式) )
设置复选框或单选按钮控件标题的对齐方式(和标签的对设置复选框或单选按钮控件标题的对齐方式(和标签的对
齐方式意义不同),齐方式意义不同),在设计模式和运行模式下均可设置。在设计模式和运行模式下均可设置。
有两种取值情况:有两种取值情况:
0 – VbLeftJustify(0 – VbLeftJustify(缺省缺省) ) 控件居左,标题在控件右侧显示控件居左,标题在控件右侧显示
1 – VbRightJustify 1 – VbRightJustify 控件居右,标题在控件左侧显示控件居右,标题在控件左侧显示
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
(3) Style ((3) Style (风格风格))
指定复选框或单选按钮的显示方式。有两种取值情况:指定复选框或单选按钮的显示方式。有两种取值情况:
0 – VbButtonStandard(0 – VbButtonStandard(缺省缺省) ) 标准方式,同时显示控件标准方式,同时显示控件
和标题和标题
1 – VbButtonGraphical 1 – VbButtonGraphical 图形方式,控件用图形的样式显图形方式,控件用图形的样式显
示,外观与命令按钮相类似示,外观与命令按钮相类似
复选框和单选按钮的风格比较复选框和单选按钮的风格比较.
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE%E7%9A%84%E9%A3%8E%E6%A0%BC%E6%AF%94%E8%BE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE%E7%9A%84%E9%A3%8E%E6%A0%BC%E6%AF%94%E8%BE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE%E7%9A%84%E9%A3%8E%E6%A0%BC%E6%AF%94%E8%BE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE%E7%9A%84%E9%A3%8E%E6%A0%BC%E6%AF%94%E8%BE%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
ClickClick事件事件
单选钮和复选框都可以接受click事件,但是通
常不对该事件过程编程(通常用户先对给出的选项
进行选择,再单击某个具有“完成”功能的按钮,
此时再根据用户的选择做出相应的设置);如果想
立即响应按钮的选择,则需要在click事件中编写
代码。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第三节 单选钮和复选框
单选钮和复选框应用举例单选钮和复选框应用举例
在窗体在窗体Form1Form1上添加一个文本框上添加一个文本框Text1Text1,将其,将其TextText属性修属性修
改为改为““青霉素是抗菌消炎药品青霉素是抗菌消炎药品””,,FontFont属性设为宋体,四号。属性设为宋体,四号。
再添加两个单选钮再添加两个单选钮Option1Option1和和Option2Option2,将,将CaptionCaption属性分别设属性分别设
定为定为““隶书隶书””和和““黑体黑体””。再添加两个复选框。再添加两个复选框Check1Check1和和
Check2Check2,将,将CaptionCaption属性分别设定为属性分别设定为““斜体斜体””和和““删除线删除线””。。
要求:当单击某种字体名称或字体格式时,即时生效要求:当单击某种字体名称或字体格式时,即时生效
字符格式设定字符格式设定.
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%AD%97%E7%AC%A6%E6%A0%BC%E5%BC%8F%E8%AE%BE%E5%AE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%AD%97%E7%AC%A6%E6%A0%BC%E5%BC%8F%E8%AE%BE%E5%AE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%AD%97%E7%AC%A6%E6%A0%BC%E5%BC%8F%E8%AE%BE%E5%AE%
%E5%A4%8D%E9%80%89%E6%A1%86%E5%92%8C%E5%8D%95%E9%80%89%E6%8C%89%E9%92%AE/%E5%AD%97%E7%AC%A6%E6%A0%BC%E5%BC%8F%E8%AE%BE%E5%AE%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
图形控件
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
为了设计内容丰富、界面美观的应用程序我
们经常需要用到与图形相关的控件,常见的有:
1. 图片框(图片框(PictureBoxPictureBox))
2. 图像框(图像框(ImageImage))
3. 直线(直线(LineLine))
4. 形状(形状(ShapeShape))
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
PictureBox
PictureBoxPictureBox(图片框)控件的主要作用是显示图片,另外(图片框)控件的主要作用是显示图片,另外
还可作为容器,像窗体一样容纳和分组其它控件及打印输出。还可作为容器,像窗体一样容纳和分组其它控件及打印输出。
1. 1. 重要属性重要属性
(1) Align ((1) Align (停靠位置停靠位置))
用于设置图片框在窗体上的位置,有以下几种取值情况:用于设置图片框在窗体上的位置,有以下几种取值情况:
0 – None0 – None(缺省)图片框的大小、位置由设计者手动设定(缺省)图片框的大小、位置由设计者手动设定
1 – Align Top 1 – Align Top 上边缘自动与窗体上边缘对齐,宽度自动与窗体上边缘自动与窗体上边缘对齐,宽度自动与窗体
的宽度相同的宽度相同((之后调整窗体宽度时,图片框的宽度也自动改变之后调整窗体宽度时,图片框的宽度也自动改变)),高度,高度
保持原来高度不变保持原来高度不变((可以自行调整可以自行调整))。位置和宽度不可自行随意调整。位置和宽度不可自行随意调整
2 – Align Bottom 2 – Align Bottom
3 – Align Left 3 – Align Left
4 – Align Right 4 – Align Right
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
(2) Picture((2) Picture(显示图片显示图片) )
设置图片框上显示的图片。加载方法设置图片框上显示的图片。加载方法((同命令按钮同命令按钮):):
第一种:第一种:在设计模式下从属性窗口中添加在设计模式下从属性窗口中添加//修改修改
第二种:第二种:在运行模式下通过在运行模式下通过LoadPictureLoadPicture函数添加函数添加//修改,修改,
语法格式为:语法格式为:
[[对象名对象名.]Picture=LoadPicture(“.]Picture=LoadPicture(“带完整路径的图片文件名带完整路径的图片文件名”)”)
装入图形:装入图形:
=LoadPicture(“C:\animal\”)=LoadPicture(“C:\animal\”)
删除图形:删除图形:=LoadPicture(“”)=LoadPicture(“”)
将将Pictrue1Pictrue1和和Picture2Picture2中现有的图片进行交换:中现有的图片进行交换: 例子例子
= =
= =
= =
%E5%9B%BE%E7%89%87%E6%8E%A7%E4%BB%B6/%E5%9B%BE%E7%89%87%E4%BA%A4%E6%8D%
%E5%9B%BE%E7%89%87%E6%8E%A7%E4%BB%B6/%E5%9B%BE%E7%89%87%E4%BA%A4%E6%8D%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
(2) Appearance ((2) Appearance (外观外观) )
设置图片框是否以立体三维形式显示边框。设置图片框是否以立体三维形式显示边框。
(3) AutoRedraw ((3) AutoRedraw (自动重绘自动重绘))
与窗体相同,在程序运行过程中,当在图片框中使用图形与窗体相同,在程序运行过程中,当在图片框中使用图形
方法(如方法(如CircleCircle、、LineLine、、Point Point 和和 PsetPset)绘制图形或使用)绘制图形或使用PrintPrint
方法输出文本后,由于被其它对象遮挡而使得被绘制的图形或方法输出文本后,由于被其它对象遮挡而使得被绘制的图形或
打印的文本不可见后,被遮挡部分再次露出时,如果该属性设打印的文本不可见后,被遮挡部分再次露出时,如果该属性设
置为置为 TrueTrue,那么这些图形或文本将被自动重绘输出。,那么这些图形或文本将被自动重绘输出。
(4) AutoSize((4) AutoSize(自动调整尺寸自动调整尺寸))
设置图片框是否自动调整为与设置图片框是否自动调整为与PicturePicture属性中加载的图片尺属性中加载的图片尺
寸相同。寸相同。((注意与注意与ImageImage的的StretchStretch属性的区别属性的区别))
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
Image
图像框图像框(Image)(Image)和图片框都可以显示图片,但和图片框都可以显示图片,但图像框不能作图像框不能作
为容器为容器((不能像图片框一样存放其它的控件和打印输出不能像图片框一样存放其它的控件和打印输出)),另外,另外
图像框比图片框占用更少的内存,描绘的更快。图像框比图片框占用更少的内存,描绘的更快。
图像框的特殊属性图像框的特殊属性——Stretch(——Stretch(拉伸拉伸))
False False 装载图片后,装载图片后,图像框的大小自动调整为与图形的大图像框的大小自动调整为与图形的大
小相同。当调整图像框的大小时图形并不跟随缩放调整小相同。当调整图像框的大小时图形并不跟随缩放调整
True True 图形的大小根据图像框大小的进行拉伸缩放,显示图形的大小根据图像框大小的进行拉伸缩放,显示
的永远是图形的全部内容的永远是图形的全部内容
PictureBoxPictureBox的的AutoSize(AutoSize(自动调整尺寸自动调整尺寸))属性:属性:区别区别
设置图片框是否自动调整为与设置图片框是否自动调整为与PicturePicture属性中加载的图片尺寸属性中加载的图片尺寸
相同。相同。
%E5%9B%BE%E7%89%87%E6%8E%A7%E4%BB%B6/AutoSize%E4%B8%8EStretch%E5%8C%BA%E5%88%
%E5%9B%BE%E7%89%87%E6%8E%A7%E4%BB%B6/AutoSize%E4%B8%8EStretch%E5%8C%BA%E5%88%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
Line
LineLine控件可以显示为一条直线。控件可以显示为一条直线。
常见属性:常见属性:
. BorderColorBorderColor
线条的颜色线条的颜色
. BorderStyle BorderStyle
线型。例如实线、虚线等。取值从线型。例如实线、虚线等。取值从00到到66。。
. BorderWidthBorderWidth
线条的粗细。线条的粗细。
. X1X1、、Y1Y1和和 X2X2、、Y2Y2
线条的起始端点坐标线条的起始端点坐标
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第四节 图形控件
Shape
ShapeShape控件可以显示为一个简单的图形。常见属性:控件可以显示为一个简单的图形。常见属性:
. BackColorBackColor、、BackStyleBackStyle
同同LabelLabel控件。控件。
. BorderColorBorderColor、、BorderStyleBorderStyle、、BorderWidthBorderWidth
图形的边框格式。同图形的边框格式。同LineLine控件。控件。
. FillColorFillColor、、FillStyleFillStyle
填充图案的颜色和填充图案的类型,填充图案的颜色和填充图案的类型,如水平直线填充、如水平直线填充、
斜线填充等。斜线填充等。FillStyleFillStyle的取值从的取值从00到到77,共,共88种填充图案。种填充图案。
. ShapeShape
图案的外观形状,例如圆形、椭圆形、正方形等。图案的外观形状,例如圆形、椭圆形、正方形等。取值取值
从从00到到55,共有,共有66种情况种情况。。
例:奥运五环
%E7%94%BB%E5%9B%BE%E6%8E%A7%E4%BB%B6/%E4%BA%94%E7%8E%
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第五节 焦点和Tab顺序
焦点和Tab顺序
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第五节 焦点和Tab顺序
设置焦点设置焦点
1. 1. 只有具有焦点的对象才可以接收用户的输入。只有具有焦点的对象才可以接收用户的输入。
2. 2. 对象得到焦点时,会触发对象得到焦点时,会触发GotFocusGotFocus事件;失去焦点时,将触事件;失去焦点时,将触
发发LostFocusLostFocus事件。事件。
3. 3. 为对象设置焦点的方法有:为对象设置焦点的方法有:
1) 1) 利用鼠标单击该对象利用鼠标单击该对象
2) 2) 利用利用TabTab键将焦点移动到该对象上键将焦点移动到该对象上
3) 3) 利用热键选择该对象利用热键选择该对象
4) 4) 通过通过SetFocusSetFocus方法将焦点放到某对象上方法将焦点放到某对象上
4. 4. 对象的对象的EnabledEnabled和和VisibleVisible属性均为属性均为TrueTrue时,才能接收焦点时,才能接收焦点
5. 5. 并并非所有对象都可以接收焦点。非所有对象都可以接收焦点。常见控件中,常见控件中,FrameFrame、、LabelLabel、、
MenuMenu、、LineLine、、ShapeShape、、ImageImage和和TimerTimer等,不能接收焦点。等,不能接收焦点。(只有当窗体(只有当窗体
上的任何控件都不能接收焦点时,该窗体才能接收焦点)上的任何控件都不能接收焦点时,该窗体才能接收焦点)
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
第五节 焦点和Tab顺序
Tab顺序顺序
TabTab顺序就是按下顺序就是按下TabTab键时,焦点在各控件之间移动的顺序。键时,焦点在各控件之间移动的顺序。
默认情况下,默认情况下,TabTab顺序顺序就是控件建立的先后顺序。就是控件建立的先后顺序。
前面列出的不能接受焦点的控件,以及前面列出的不能接受焦点的控件,以及无效的无效的、、不可见的控件,不可见的控件,
由于无法接收焦点,由于无法接收焦点,在按在按TabTab键时会被直接跳过。键时会被直接跳过。
能够接受焦点的控件对象都有一个能够接受焦点的控件对象都有一个TabIndexTabIndex属性,其实属性,其实TabTab顺顺
序就是该属性的顺序。序就是该属性的顺序。通过人为修改通过人为修改TabIndexTabIndex的值,就可以按照的值,就可以按照用用
户操作的户操作的习惯来设置各控件的习惯来设置各控件的TabTab顺序,以实现界面操作的友好性顺序,以实现界面操作的友好性。。
计算机程序设计(第二版)——沈阳药科大学
计算机程序设计(第二版)——沈阳药科大学
注意事项:
1.窗体窗口中的控件名称必须和代码窗口中的一致。
2.对某事件编写代码最好直接双击该控件,不要手写。有些事件需
要参数例如keyPress事件中keyAscii参数。
3.如果书写某对象的属性时,按下“.”之后没有提示,一般说明
控件名写错了(例如:)。可以用”me.对象名.属性”
的方法来避免或者在属性窗口中复制对象的名字。
4. picture控件的picture属性只有当style为1时才生效。注意VB
自带的图库目录位置。
5. 使用FontName, FontBold等属性的注意事项:“宋体”为字体
名称,“粗体”不是,=not 的意
义
3
End of the chapter
沈阳药科大学计算机教研室沈阳药科大学计算机教研室