VB第五课-控件1.ppt_第1页
VB第五课-控件1.ppt_第2页
VB第五课-控件1.ppt_第3页
VB第五课-控件1.ppt_第4页
VB第五课-控件1.ppt_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5章 常用标准控件,5.1 文本框和标签 5.2 命令按钮、复选框、单选按钮和框架 5.3 列表框、组合框和滚动条 5.4 图片框、图像框和计时器 5.5 对象命名前缀,5.1 文本框和标签,程序运行中,需要通过键盘接收用户输入的信息,或把有关信息显示在屏幕上。在Visual Basic 中,可以用文本框和标签实现接收信息和显示信息。 本节主要介绍文本框和标签的特点和使用方法。文本框用于显示可以进行编辑的文本,标签用来显示不想让其他用户改变的文本。文本框通常用于向计算机输入信息,而标签通常用于输出信息。,1、文本框属性 1)Text 属性字符型 在文本框中显示的正文内容存放在该属性中。当程序

2、运行时,用户通过键盘输入的正文内容,也保存在该属性中。 文本框没有Caption属性 2)Maxlength: 数值型该属性用于限定文本框中可以输入的最大字符数。默认值0表示任意长度值。,是一个文本编辑区域,可以输入,编辑和显示文本。,5.1.1文本框TextBox,3) MultiLine逻辑型 如果将Multiline属性设为False,则在文本框中只能输入单行文本,如果将Multiline属性设为True,则可以使用多行文本,文本自动换行。默认一行. False 4)PasswordChar属性字符型 当MultiLine为False时,该属性可用于口令输入,可以将任何输入的字符以某个特

3、定字符显示,例如,若希望在文本框中显示星号,则可在【属性窗口】中将 PasswordChar 属性指定为 “*” 。这时,无论用户输入什么字符,文本框中都显示星号。,5.1.1文本框TextBox,5)ScrollBars: 数值型 当MultiLine为True时,该属性才有效,可以用来在多行文本框中加入各种滚动条。 0-None:无滚动条 1-Horizontal:水平滚动条 2-Vertical垂直滚动条 3-Both水平和垂直滚动条 当设置ScrollBars为非0 ,自动换行失效。 6)Locked:逻辑型 该属性用来指定文本框中的内容是否可被编辑修改。 False,表示为可编辑。

4、7) Alignment属性 该属性用于设置文本框中文本的对齐方式。,5.1.1文本框TextBox,8)SelStart、SelLength和SelText属性 这三个属性都是文本框中对文本的编辑属性。 SelStart:确定在文本框选中文本的起始位置。 SelLength:设置或返回文本框中选定的文本字符串长度,即字符个数。 SelText:设置或返回当前选定文本中的文本字符串。如果没有选中的字符,那么返回值为空。 见【例5.1】,5.1.1文本框TextBox,界面设计,5.1.1文本框TextBox,【例5.1】制作一个登录对话框,界面设计如图所示。程序运行时,在上面的文本框内输入密码

5、,如果输入的文本与预设的密码相同,单击【确定】按钮,则在另一个文本框内显示“密码正确,欢迎你使用本系统!”,否则文本框内显示“密码错误,请重新输入!”,单击【清除】按钮,则清除文本框内的内容。,2. 文本框的事件 文本框除响应鼠标的Click和Dbclick事件外,常用的事件有: 1)Change事件 当文本框中的内容(Text)发生变化时激发该事件。无论是通过用户输入还是通过代码改变文本框中的内容,都会触发该事件。 2)KeyPress(KeyAscii As Integer): 当用户按下并释放键盘上一个ANSI键时,就会触发一次该事件,并返回一个KeyAscii参数(字符的Ascii值)

6、到该事件过程中。 例如:输入“A”,则KeyAscii的值是65。可用函数Chr$(KeyAscii) 得到字符“A”。,5.1.1文本框事件,3)LostFocus事件 当用户按下Tab键时光标离开文本框,或用鼠标选择其他对象时触发该事件,称为“失去焦点”事件,在控件失去焦点时发生。4)GotFocus事件 控件获得焦点时发生,当文本框具有输入焦点时,键盘上输入的每个字符都将在该文本框中显示出来。只有当一个文本框被激活并且可见性为True时才能接收到焦点。 3. 文本框的方法 SetFocus(设置焦点) 格式:.SetFocus 功能: 把光标移到指定的文本框对象中。,5.1.1文本框事件

7、,4、说明: 1)、利用SetFocus方法可以使对象获得“焦点” 2)、用TabIndex属性可以控制当Tab键改变焦点时的移动顺序 3)、可以用TabStop属性使某个文本框轮空,界面设计,【例5.2】设计一个如图所示的窗体,在窗体上画两个文本框、两个命令按钮和三个标签,程序运行时,当在其中一个文本框中输入英文字符时,另一个文本框会显示相同的内容,始终第一个文本框会显示小写字母,第二个文本框会显示大写字母。按【清除】按钮,会清除文本框中的内容。按【退出】按钮,退出程序。,例5.3,Option Explicit Private Sub Form_Load() Label1.Caption

8、= End Sub Private Sub Command1_Click() Label1.Caption = Text3 = Str$(Val(Text1) + Val(Text2) End Sub Private Sub Command2_Click() Label1.Caption = Text3 = Str$(Val(Text1) - Val(Text2) End Sub Private Sub Command3_Click() 乘法 Label1.Caption = Text3 = Str$(Val(Text1) * Val(Text2) End Sub,Private Sub Co

9、mmand4_Click() Label1.Caption = Text3 = Str$(Val(Text1) / Val(Text2) End Sub Private Sub Command5_Click() 清除 Text1.Text = Text2.Text = Text3.Text = “ Label1.Caption = End Sub,例5.4 设计一个程序,当用户输入大写英文字母时,窗体显示“输入正确!”,否则显示“输入有错误,请使用大写字母!”,Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii 90 Then

10、 Cls Print 输入有错误,请使用大写字母! Else Cls Print 输入正确 End If End Sub,作业1 一个用户身份验证程序,Private Sub Text1_KeyPress(KeyAscii As Integer) Dim pw As String, i As Integer If KeyAscii = 13 Then 按回车键后进行密码检验 pw = Trim(Text1) If pw = 123456 Or pw = 198964 Or pw = 168789 Then MsgBox “你的口令正确, vbInformation + vbOKOnly, 用户

11、身份验证 Else i = MsgBox(口令不正确, vbYesNo + vbQuestion, 提示信息) If i 7 Then Text1.Text = Text1.SetFocus Else End End If End If End If End Sub,作业2、根据输入的成绩计算平均分,其格式为保留两位小数,用于显示文本信息,不能作为输入信息的界面。因为标签只能显示文本,不能进行编辑。所以,可以用标签为文本框、列表框和组合框等控件附加描述性信息。,1常用属性 (1)Caption属性 该属性用于在标签中显示文本。缺省情况下,当文本超过控件宽度时,文本会自动换行,而当文本超过控件高

12、度时,超出部分将被裁剪掉。,5.1.2 标签Label,(2) Alignment属性 设置Caption属性中文本的对齐方式,共有三种可选值: 0 左对齐(Left Justify); 1 右对齐(Right Justify); 2 居中对齐(Center Justify)。 (3)BackStyle属性 该属性用于设置标签背景的显示模式。有两种情况可选:值为0时,表示背景透明,标签后的背景和图形可见;值为1时,表示不透明,标签后的背景和图形不可见。 (4) BorderStyle属性 该属性用于设置标签有无边框。,(5)AutoSize属性 该属性用于设置能否根据Caption属性指定的标

13、题内容自动调整标签的大小。 如果值为True,则随Caption内容的大小自动调整控件本身的大小,且不换行;如果值为False,表示标签的尺寸不能自动调整,超出尺寸范围的内容不予显示。 (6)WordWrap属性 此属性只能应用于标签,而且只能在Autosize属性为True的情况下使用。用于设置调整标签大小时的方式。 True: 文本卷绕;Label 控件垂直展开或缩短,以使其与文本和字体大小相适。水平大小不变。 False:(缺省值)文本不卷绕;Label 水平地展开或缩短以使其与文本的长度相适,并且垂直地展开或缩短以使其与字体的大小和文本的行数相适应。,注意 AutoSize属性为Fal

14、se,不管WordWrap属性如何,文本总是要自动换行,若标签不够高而Caption太长时,Caption将被切割掉。 AutoSize属性为True,WordWrap属性为False时,表示可以水平伸展,但只显示一行信息。 如果 AutoSize 和 WordWrap 都设置为 True,标签会垂直伸展、文本将会自动换行,而不会增加 Label 控件的宽度,但有一种情况例外,那就是所输入的一个单词的长度要大于 Label 宽度。此时Label 的宽度将增加到适应这个长单词。,例5.5 在窗体上,放置5个标签,其名称使用默认值Label1Label5,在属性窗口,按下表设置它们的属性,1. 焦

15、点 焦点是指对象接收用户鼠标或键盘输入的能力。 程序运行时,可以用下列方法使对象获得焦点: 用SetFocus方法在代码中设置焦点。对象名.Setfocus 用鼠标单击对象。 Tab键或Shift+Tab在当前窗体的各对象之间巡回移动焦点。 按热键选择对象。,5.1.3 焦点与Tab键序,2. Tab键序 TabIndex属性决定控件接收焦点的顺序。当画出第一个控件时,该属性值默认为0,第二个为1,第三个为2。程序运行中按Tab键时,焦点将根据TabIndex属性值所指定的焦点移动顺序移动到下一个控件。 TabStop属性决定焦点是否能够停在该控件上。如果为假(False),则运行中按Tab键

16、选择控件时,将跳过该控件,并按焦点移动顺序把焦点移到下一个控件上。,5.2 命令按钮、复选框、单选按钮和框架,5.2.1 命令按钮 命令按钮可以说是所有控件中最为常见的,几乎每个应用程序都需要通过它同用户进行交互,命令按钮通常用来在单击时执行指定的操作。启动命令可以有三种方式: 1)鼠标单击; 2)按Tab键焦点跳转到该按钮, 再按回车键; 3) 快捷键(Alt+有下划线的字母) 1常用属性 (1)Caption: 命令按钮显示的内容,可在某字母前加 “&“设置快捷键。例如: &Ok ,显示 Ok (2)Default:当一个命令按钮的Default属性被设置为True时,该按钮为缺省活动按钮

17、,即程序运行时按回车键和单击该命令按钮的效果相同。 注意:在一个窗体只能的一个按钮的Default设置为True。,(3)Cancel:当设置为True时,该按钮为缺省取消按钮,即 程序运行时按Esc键与单击此命令按钮的效果相同。 注意:在一个窗体只能的一个按钮的Cancel设置为True (4)Visible: 检查该按钮运行时是否可见。 True,可见;False,不可见。 (5)Style : 确定显示的形式: 0 只能显示文字, 1 文字、图形均可 。 (6)Picture和DownPicture :使命令按钮具有图形背景的两个属性。按钮可显示图片文件(.bmp和.Ico),只有当St

18、yle属性值为1时有效。 DownPicture在控件被单击并处于按下状态时显示的图形。 (7)ToolTipText :设置工具提示,和Picture结合使用。,5.2.1 命令按钮,2. 事件 能够响应的常用事件是Click,MouseDown,MouseUp,命令按钮不支持DblClick双击事件 3. 命令按钮的方法 命令按钮的常用方法有:Move,SetFocus方法。 见【例】,5.2.1 命令按钮,例5.6,Private Sub Command1_Click() If Command1.Caption = 显 示 Then Text1.FontSize = 20 设置文本框显示

19、文本的字符大小(磅) Text1.Text = 这是我的第一个VB应用程序 Command1.Caption = 继 续 Command2.Enabled = False 让命令按钮Command2变为不可用 Else Text1.FontSize = 26 Text1.Text = 敬 请 赐 教,谢谢! Command1.Caption = 显 示 Command2.Enabled = True End If End Sub Private Sub Command2_Click() 同样编写另外事件的过程代码 End End Sub Private Sub Form_Load() 设置命令

20、按钮Command2初始状态不能用 Command2.Enabled = False End Sub,例、 文本框为空时,按钮无效,反之有效,Private Sub Text1_Change() If Text1.Text = Then 查看文本框是否为空。 Command1.Enabled = False 使按钮无效。 Else Command1.Enabled = True 使按钮有效。 End If End Sub,【作业3】窗体界面设计如图所示,程序运行时,用【上】【下】【左】【右】 四个按钮来控制实现窗体的移动,并且保证不移动到屏幕之外。,窗体界面,检查框,5.2.2 复选框(检查框

21、)checkBox,5.2.2 复选框,复选框也称检查框,复选框有两种状态可以选择:选中(或称“打开”,复选框中出现一个“”标志),不选(或称“关闭”,“”标志消失)。如同一个开关一样,每单击一次复选框,它的状态在“打开”与“关闭”之间来回切换,“”标志也在有和无之间切换。 1. 复选框的属性 复选框除了具有前面介绍过的Name,Caption,Visible,Enabled,BackColor, FontBold,FontItalic,FontName,FontSize,FontUnderline,Height,left,Top,Width等属性外,常用的还有Value属性 。,Value

22、复选框的Value 属性值为数值型数据,可取 0 , 1 , 2 0-Unchecked:未被选定 1-Checked:选定 2-Grayed:灰色,禁止选择,(2) Alignment 数值型 设置复选框在标题的左侧()还是右侧() (3) Style 数值型 设置复选框的外观。Style=0,标准复选框的外观,即在一个方框边显示提示信息。 Style=1,其控件类似于命令按钮。单击,被按下未弹起状态,再次单击,恢复原状。,2. 复选框的事件 复选框能够响应的最常用的事件是Click事件。用户一般无需为检查框编写Click事件过程,但其对Value属性值的改变遵循以下规则: 单击未选中的检查

23、框时, Value属性值变为1 ; 单击已选中的检查框时, Value属性值变为0 ; 单击变灰的检查框时,Value属性值变为0。,例5.7 复选按钮例,Private Sub Check1_Click() Text1.Font = 隶书 End Sub Private Sub Check2_Click() Text1.FontItalic = True End Sub Private Sub Check3_Click() Text1.FontSize = 20 End Sub,Private Sub Check1_Click() If Check1.Value Then Text1.Fon

24、t = 隶书 Else Text1.Font = 宋体 End Sub Private Sub Check2_Click() If Check2.Value Then Text1.FontItalic = True Else Text1.FontItalic = False End Sub Private Sub Check3_Click() If Check3.Value Then Text1.FontSize = 20 Else Text1.FontSize = 12 End Sub,【作业4】编写程序使用复选框实现对文本的字形控 制,界面设计如图1所示。程序的执行结果如图2所示。,图1

25、界面设计,图2 执行结果,单选按钮,5.2.3 单选按钮OptionButton,单选按钮类似于复选框,但又有所不同,如果有多个复选框,可以同时选择多个复选框,每个复选框都是独立、互不影响的。但是在一组单选按钮中,只能选择其中的一个。圆圈中的小黑点表示选中,当选中一项时,将立即清除该组中其他按钮的选择。,1. 单选按钮的属性 (1) Caption:文本标题。设置单选钮的文本注释内容。 (2) Alignment属性: 0:Left Justify(缺省)控件钮在左边,标题显示在右边。 1:Right Justify 控件钮在右边,标题显示在左边。 (3)Value 属性返回控件的状态,复选框

26、 0-Unchecked:未被选定 1-Checked:选定 2-Grayed:灰色,禁止选择,单选按钮 True: 单选钮被选定 False: 单选钮未被选定,缺省设置,单选按钮与复选框Value 属性的比较,(4) Style 属性 0-Standard: 标准方式 1-Graphical:图形方式,2. 单选按钮的事件 单选按钮能够响应的常用事件是Click事件。 见【例5.8】 例5.8 单选按钮例,Private Sub Option1_Click() Text1.Font = 宋体 End Sub Private Sub Option2_Click() Text1.Font = 楷

27、体_GB2312 End Sub Private Sub Option3_Click() Text1.Font = 隶书 End Sub,Private Sub Form_Click() If Option1.Value Then Text1.Font = 宋体 If Option2.Value Then Text1.Font = 楷体_GB2312 If Option3.Value Then Text1.Font = 隶书 End Sub,【作业5】设计一个程序,如图1所示的窗体,程序运行时,当单击某个单选按钮后,在下面的标签会显示相应的欢迎词,执行结果分别见图2和图3。,图1窗体界面 图2

28、执行结果1 图3执行结果2,3. 使用单选钮组 当需在同一窗体中建立几组相互独立的单选钮时,需用框架(Frame)将每一组单选钮框起来,这样在一个框架内的单选钮为一组,它们的操作不影响框外其他组的单选钮。,5.2.4 框架 (Frame),Frame 控件用于将窗体内的控件进行分组,将具有联系的一类控件单独分成一组放置在框架中。,框架内控件的创建方法: 为了将控件分组,首先需要绘制 Frame 控件,然后绘制 Frame 里面的控件。 方法1:单击工具箱上的工具,然后用出现的“+”指针,在框架中适当位置拖拉出适当大小的控件。 不能使用双击工具箱上工具的自动方式。 方法2:将控件“剪切”(Ctr

29、l+X)到剪贴板,然后选中框架,使用 (Ctrl+V)命令粘贴到框架内。,1. 框架的属性 框架具有前面介绍过的Name,Caption,Visible,Enabled,BackColor,FontBold,FontItalic,FontName,FontSize,FontUnderline,Height,left,Top,Width等许多属性。 1)Caption属性:框架标题 2)Enabled属性:值为False时,标题呈灰色 3)Visible属性: True:框架及其控件可见。 False:框架及其控件被隐含起来 2.框架的事件 框架常用的事件是Click和DbClick,它不接受用

30、户输入,不能显示文本和图形,也不能与图形相连。,3. 使用框架的注意事项: (1) 要先在窗体上绘制出框架,然后再在框架内部绘制出其中的控件。这样可以保证在移动框架时,其内部的控件也会同时移动。 (2) 如果希望将窗体上已经存在的控件放置到框架内部,可以先将希望放置在框架内部的控件全部选中,使用【剪切】命令将它们剪切到剪贴板上,然后再选定框架,使用【粘贴】命令将它们粘贴到框架内部。 (3) 需要选择框架内部的多个控件时,必须先按住Ctrl键,再使用鼠标拉出虚框将多个控件选定在范围内,然后松开鼠标,范围内的多个控件即可被全部选中。 见【例5.9】,例5.9 根据选择改变文本字体、字形和字号,Pr

31、ivate Sub cmdCancel_Click() Form_Load 调用窗体的初始化过程 End Sub Private Sub cmdOK_Click() If optSong.Value Then lblExample.FontName = optSong.Caption Else lblExample.FontName = optHei.Caption End If lblExample.FontBold = chkBold.Value lblExample.FontItalic = chkItalic.Value 设置字号 If optTen.Value Then lblExa

32、mple.FontSize = 10 Else lblExample.FontSize = 12 End If End Sub,Private Sub Form_Load() 初始化控件的缺省设置 optSong.Value = True chkBold.Value = 0 chkItalic.Value = 0 optTen.Value = True 初始化字体的缺省设置 lblExample.FontName = optSong.Caption lblExample.FontBold = chkBold.Value lblExample.FontItalic = chkItalic.Val

33、ue lblExample.FontSize = 10 End Sub,【作业6】设计一个程序,窗体界面设计如图所示,用框架将相关的单选按钮放在一组中,每个框架中放两个单选按钮,一组是用来选择性别,一组是用来选择民族,一组是用来选择是否党员。程序运行时,选择相应的选项,单击【显示】按钮,在下面的标签会显示出选择的结果,结果如图所示。单击【退出】按钮,程序退出。,图界面设计 图 执行结果,5.3.1列表框 在程序设计中。有时希望能够把较多的项目在个列表中显示出来,从而进行选择操作,列表框控件为用户提供了选项列表的功能。如果项目总数超过了可显示的项目数,Visual Basic会自动为它加上滚动条

34、。列表框有两种风格:标准和复选列表框。通过它的Style属性来设置。,5.3 列表框 、组合框和滚动条,5.3.1 列表框(List Box),1. 列表框的属性 (1)Style属性 该属性用于确定列表框的外观,只能在设计时确定。在运行时是只读的。当Style=0为标准列表框,当Style=1为复选列表框。(参上页) (2)List属性 可在设计和运行时设置 字符型数组,存放列表框的项目数据,下标是从0开始的。例如: List(0)表示第一项的内容 (3) ListCount属性数值型 该属性用于计算列表框中列表项的总个数。List数组中最后一项的下标值即为ListCount -1 。,(4

35、)ListIndex属性数值型 该属性用于显示当前选中的选项在List数组中的下标值。下标值从0开始,以此类推,如果当前没有选中任何选项,则ListIndex的值将被自动设置为-1。 (5)Columns属性数值型 该属性用来确定列表框的列数。此属性值设置为0,所有项目呈单列显示,如果该属性大于或等于1,则列表框呈多列显示。,(6)MultiSelect属性数值型 用于指示是否能够在列表框控件中进行复选以及如何进行复选,在运行时是只读的。,(7)Selected属性 该属性返回或设置在列表框控件中某项目是否选中的状态。该属性是一个逻辑类型的数组,数组元素个数与列表框中的项目数相同,其下标的变化

36、范围与List属性相同。选中时,值为True;未被选中,值为False。 用下面的语句可以选择指定的列表项或取消已选择的列表项:.Selected(索引值) = True/False 注意:“索引值”从0开始,如果是第三项,那么索引值是 2 ,如果是第十项,那么索引值是 9 ,以此类推。 例如:List1.Selected(0)=True表示列表框List1的第一个项目被选中,此时ListIndex的值设置为0。Selected属性在设计时是不可用的,即无法在属性窗口中设置属性值。,(8)Text属性字符型 该属性用于显示最后一次选中的选项的内容。Text属性的返回值总与List(ListIn

37、dex)的值相同。 (9)Sorted属性 返回一个逻辑值,当Sorted属性为True时列表框控件或组合框控件的项目自动按字母数字顺序(升序)排序,为False时项目按加入的先后顺序排列显示。该属性只能在设计时设置,不能在程序代码中设置。 (10)SelCount(选中项目数量): 只有当 MultiSelect 属性值为1或2时,本属性才起作用,用来读取列表框中所选项目的数目,通常与Selected属性一起使用,以处理控件中的所选项目。,2. 列表框事件 列表框主要接收事件为:Click、DblClick事件。 3. 列表框方法 (1) AddItem方法: 该方法用于在程序代码中向列表框

38、中添加一个选项,只能单个地向表中添加项目。 格式为:. AddItem,索引值。 选项内容字符串: 为字符串表达式,表示要加入的项目。 索引值:决定新增项目的位置,缺省,则添加在最后。 例如list1.AddItem “包头”,2 插入第3项 list1.AddItem “上海” 插入末项,(2) RemoveItem方法 该方法用于删除列表框中某个指定的项目,此方法每次只能删除列表框中一个选项。 格式为:.RemoveItem 例如list1.RemoveItem 2 删除第3项 list1. RemoveItem list1.listindex 删除当前所选项 例如,要删除列表框(List

39、1)中所有选中的项目,可使用下面的程序段: i = 0 Do While i = List1.ListCount - 1 If List1.Selected(i) = True Then List1.RemoveItem i else i = i + 1 End If Loop,(3) Clear方法 该方法用于清除列表框中的全部内容,而且ListCount属性的值重新被设置为0。 格式为:.Clear 例如,要删除列表框(List1)中所有项目,可使用: List1. Clear,【作业7】设计一个程序,用以选择用户喜爱的体育项目。界面设计如图所示,其功能是:在左边的列表框中选择一个项目,再

40、单击【添加】按钮,左边的列表框移除相应的项目,在右边的列表框中添加所选的内容。在右边的列表框中选择一个项目,再单击【移除】按钮,在左边的列表框中添加所选的内容,在右边的列表框中移除所选的内容。,界面设计,【作业8 】设计一个程序,程序运行时,如图所示窗体上有两个列表框,左列表框(LstLeft)罗列了一些体育项目,右列表框初始状态为空;单击【-】按钮,可以将左列表框中选定的项目移动到右列表框中;单击【-】按钮,可以将左列表框中的所有内容移动到右列表框中。单击【-】按钮,可以将右列表框中的选定的项目移到左边列表框;单击【-】按钮,可以将右列表框中所有的内容移到左列表框中。,窗体界面,组合框用于将

41、文本框和列表框的功能结合在一起,既允许用户直接输入文本,也允许用户通过列表进行选择。 组合框共三种风格:下拉式组合框、简单组合框和下拉式列表框。由style 属性控制,5.3.2组合框( ComboBox),1. 组合框属性和方法 (1) Style属性 该属性用于设计组合框的外表样式。 (2) Text属性 该属性用于获取组合框内列表中的当前选项或者文本编辑区内的内容。可以利用此属性来判断用户选择了组合框中的哪个选项或者输入了什么文本内容。 2.组合框的事件 组合框响应的事件依赖于Style属性 当Style=0时,响应Click,Change,Dropdown事件; 当Style=1时,响

42、应Click,Change事件; (接受输入触发Change) 当Style=2时,响应Click, Dropdown事件(单击向下箭头触发Dropdown) 3. 组合框方法 组合框使用的常用方法与列表框相同,用AddItem方法添加选项,用RemoveItem方法删除一个选项,用Clear方法删除全部选项。,4.列表框和组合框的Style属性 该值用来指示控件的显示类型和行为。在运行时是只读的。列表框控件和组合框控件的Style属性含义是不同的。,可以输入,例5.10 组合框属性设置,Private Sub cmdAdd_Click() 添加功能 If Combo1.Text Then F

43、or I% = 0 To Combo1.ListCount - 1 If Combo1.Text = Combo1.List(I) Then Exit For Next I If I = Combo1.ListCount Then Combo1.AddItem Combo1.Text End If End Sub Private Sub Form_Load() 列表框初始化 Combo1.AddItem chinese Combo1.AddItem english Combo1.AddItem AutoCAD Combo1.AddItem Italin Combo1.AddItem ameri

44、can End Sub,Private Sub cmdDelete_Click() 删除功能 If Combo1.ListIndex = 0 Then Combo1.RemoveItem Combo1.ListIndex Else For I = 0 To Combo1.ListCount - 1 If Combo1.List(I) = Combo1.Text Then Combo1.RemoveItem I End If Next I End If End Sub Private Sub Command3_Click() 清除 Combo1.Clear End Sub,例5.11 编写个人资

45、料界面,当点确定时在下边的标签中显示个人资料,Private Sub Command1_Click() Dim Sex As String, Hobby As String If Option1.Value = True Then Sex = Option1.Caption If Option2.Value = True Then Sex = Option2.Caption If Check1.Value = 1 Then Hobby = Hobby & & Check1.Caption If Check2.Value = 1 Then Hobby = Hobby & & Check2.Cap

46、tion If Check3.Value = 1 Then Hobby = Hobby & & Check3.Caption If Check4.Value = 1 Then Hobby = Hobby & & Check4.Caption Label4.Caption = Txtname.Text & & Sex & & Txtage .text & & Combo1.Text & 爱好: & Hobby End Sub Private Sub Form_Load() Combo1.AddItem 回族 Combo1.AddItem 汉族 Combo1.Text = 汉族 End Sub,例

47、5.12 设计一个用于设置字体属性的程序,界面如图所示。,Private Sub cboFontName_Click() lblExample.FontName = cboFontName.Text End Sub Private Sub cboFontSize_Change() lblExample.FontSize = Val(cboFontSize.Text) End Sub Private Sub cboFontSize_Click() lblExample.FontSize = Val(cboFontSize.Text) End Sub Private Sub cmdCancel_C

48、lick() lblExample.FontName = 宋体 lblExample.FontSize = 10 cboFontName.Text = 宋体 cboFontSize.Text = Str(10) End Sub,Private Sub cmdOK_Click() End End Sub Private Sub Form_Load() Dim i As Integer For i = 0 To Screen.FontCount - 1 cboFontName.AddItem Screen.Fonts(i) Next i For i = 8 To 30 Step 2 cboFont

49、Size.AddItem Str(i) Next i lblExample.FontName = 宋体 lblExample.FontSize = 10 cboFontName.Text = 宋体 cboFontSize.Text = Str(10) End Sub,【作业9】设计一个程序,界面设计如图所示,在文本框下有三个组合框,左边的组合框提供了可选的字体,中间的组合框提供了字形的设置,右边的组合框提供了字号的设置。程序运行时,选择组合框内不同的选项,文本框内的文本会有不同的显示效果,执行结果如图3.31所示。,界面设计,执行结果,5.3.3滚动条(Scroll),滚动条用于给自身不具备滚

50、动条的控件提供滚动功能。也可用作数据输入工具,用来提供某一范围内的数值供用户选择 。 分为: 水平滚动条(HScrollbar) 垂直滚动条(VscrollBar),1. 滚动条的结构,滚动条的两端各有一个滚动箭头,在滚动箭头之间有一个滚动框。滚动框从一端移至另一端时,其值在不断变化。垂直滚动条的值由上往下递增,水平滚动条的值由左往右递增。其值均以整数表示,取值范围为3276832767,最小值和最大值分别在两个端点。,(1) Min:最小值 -32,76832,767 (2) Value 滚动框在滚动条上的当前位置。 (3) Max:最大值 -32,76832,767 (4) SmallCh

51、ange 单击滚动条两端的箭头时,Value属性增加或减小的数值。 (5) LargeChange 用于设置当单击滚动条上的空白处时,滚动框向某个方向移动的的增量值。,2. 滚动条的属性,(1) Scroll事件 该事件只在移动滚动框时被激活,单击滚动箭头或单击滚动条均不能激活该事件。拖动滑块时会触发Scroll事件。一般可用该事件来监测滚动框的动态变化。 (2) Change事件 该事件在移动滚动框或通过代码改变其Value属性值时发生。单击滚动条两端的箭头或空白处将引发Change事件。一般可用该事件来获得移动后的滚动框所在的位置值。 Scroll事件与Change事件的区别在于:当滚动条

52、控件滚动时Scroll事件一直发生,而Change事件只是在滚动结束之后才发生一次。,3. 滚动条事件,例5.13 设计一个用于设置字体颜色的程序.,hsbRed.Min = 0 Private Sub Form_Load() 初始化设置 hsbRed.Max = 255 hsbRed.Value = 0 hsbRed.SmallChange = 1 hsbRed.LargeChange = 10 hsbGreen.Min = 0 hsbGreen.Max = 255 hsbGreen.Value = 0 hsbGreen.SmallChange = 1 hsbGreen.LargeChang

53、e = 10 hsbBlue.Min = 0 hsbBlue.Max = 255 hsbBlue.Value = 0 hsbBlue.SmallChange = 1 hsbBlue.LargeChange = 10 lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value),Private Sub hsbBlue_Change() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value) End Sub Private Sub

54、 hsbBlue_Scroll() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value) End Sub Private Sub hsbGreen_Change() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value) End Sub Private Sub hsbGreen_Scroll() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBl

55、ue.Value) End Sub Private Sub hsbRed_Change() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value) End Sub Private Sub hsbRed_Scroll() lblExample.ForeColor = RGB(hsbRed.Value, hsbGreen.Value, hsbBlue.Value) End Sub,【作业10】界面设计如图所示,长方形的长和宽不是由用户从键盘上输入,而是通过缓慢移动滚动框或单击滚动条的两端箭头以改变长和宽的数值,

56、在相应的文本框内显示出数值,同时在标签上显示出计算的结果,单击按钮,程序退出。程序执行效果如图所示。,界面设计,执行结果,5.4 图片框、图像框和计时器,图片框(PictureBox)和图像框(Image)这两种控件主要用于在窗体的指定位置显示图形信息。Visual Basic 6.0支持 .bmp、.ico、.wmf、.emf、.jpg和.gif等格式的图形文件。 Visual Basic 6.0提供了一种叫计时器(Timer)的控件。计时器每隔一定的时间间隔就产生一次Timer事件,用户可以根据这个特性设置时间间隔控制某些操作或用于计时。,5.4.1/2图片框(PictureBox)和图像

57、框(Image),图片框使用比较灵活,一般可用于动态情况,即需要对其中加载的图片进行修改的情况。而图像框一般只用于静态的情况,即图片不需要改变,此时使用图像框占用的系统资源较少而且重新绘图的速度比较快。 1. 图片框、图像框的常用属性 (1)Picture属性 图片框和图像框中显示的图片由Picture属性决定。图形文件既可以在设计阶段装入,也可以在运行期间装入。如果在运行期间,可以用LoadPicture函数把图形文件装入图片框或图像框中。语句格式如下: .Picture=LoadPicture(”文件名”) (2)CurrentX 和 CurrentY 数值型此属性适用于图片框、窗体、打印

58、机。设计时不可用,在程序代码中用于设置或返回下一次打印或绘图方法的水平或垂直坐标。,(3)Stretch 属性 该属性用于图像框,用于调整图像框中图片的大小来适应图像框,若属性值设置为True,则可以调整图片大小以适应图像框;否则不能调整图片大小。 (4)AutoSize属性 该属性用于图片框,用来决定图片框是否能自动调整大小来容纳整个图片。若此属性设置为True,则自动调整图片框大小;否则不自动调整大小。 2. 图片框和图像框的事件 图片框可以接受的事件有:Click,Dblclick,MouseMove,MouseUp,MouseDown,KeyPress,KeyUp和KeyDown等等 图像框能够使用的常用事件与图片框类似,但是不能使用KeyPress,KeyUp和KeyDown事件。,3. 图片框的方法 (1) Cls方法 该方法用于清除图片框内的图片。 格式为:.Cls (2) Circle方法 该方法用于在图片框内的某个位置上画一个圆。 格式为:.Circle(,), (3)Line方法 该方法用于在图片框内画一条直线。 格式为:.Line (,)-(,)。 (4) Print方法 该方法用于在图片框中显示一段文本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论