VisualBasic程序设计课件(第六章).ppt

上传人:w****2 文档编号:15594457 上传时间:2020-08-22 格式:PPT 页数:63 大小:445KB
返回 下载 相关 举报
VisualBasic程序设计课件(第六章).ppt_第1页
第1页 / 共63页
VisualBasic程序设计课件(第六章).ppt_第2页
第2页 / 共63页
VisualBasic程序设计课件(第六章).ppt_第3页
第3页 / 共63页
点击查看更多>>
资源描述
第6章 常用控件,第3章介绍了窗体的使用及最基本控件的属性、事件和方法。本章介绍另外的几个常用控件以及多窗体。主要内容有:定时器、单选钮与复选框、框架、列表框与组合框滚动条、焦点与Tab顺序、多窗体。,退出,6.1 定时器 6.2 单选钮与复选框 6.3 容器与框架 6.4 列表框与组合框 6.5 滚动条 6.6 焦点与Tab顺序,6.1 定时器,VB提供了一种叫定时器(Timer)的控件。定时器每隔一定的时间间隔就产生一次Timer事件(可理解为报时),用户可以根据这个特性设置时间间隔控制某些操作或用于计时。 1属性 定时器控件的属性不是很多,最常用的是Interval属性,该属性用来决定两次调用定时器的间隔,以ms为单位,取值范围为065535,所以最大时间间隔不能超过66s,该属性的缺省值为0,即定时器控件不起作用。如果希望每秒产生n个事件,则应设置属性Interval的值为1000/n。,2事件 定时器只支持Timer事件。对于一个含有定时器控件的窗体,每经过一段由属性Interval指定的时间间隔,就产生一个Timer事件。 【例6.1】建立数字计时器,要求每秒钟时间变化一次。 设计界面: 在窗体上添加一个定时器控件、一个标签,并按表6-1设置属性。,程序代码如下: Private Sub Timer1_Timer() Label1.FontSize = 48 Label1.Caption = Time 将Time函数返回的系统时间显示在标签中 End Sub 执行结果如下图6-3所示,每隔1s钟显示一次时间。,6.2 单选钮与复选框,有时希望在应用程序的界面上提供一些项目,让用户从几个选项中选择其中之一,这就要用“单选钮”控件。如果有多个选择框,每个选择框都是独立的、互不影响的,用户可以任意选择它们的状态组合,则可以用“复选框”控件。 6.2.1 单选钮 单选钮(OptionButton)通常成组出现,主要用于处理“多选一”的问题。用户在一组单选钮中必须选择一项,并且最多只能选择一项。当某一项被选定后,其左边的圆圈中出现一个黑点。例如,图6-4所示就是一组单选钮,用户只能在这3个单选钮选项中选择一个。,1属性 (1)Value属性 该属性表示单选按钮选中或不被选中的状态。True为选中;False为不被选中。 (2)Caption属性 该属性显示出现在单选钮旁边的文本。 (3)Style属性 该属性用来设置控件的外观。值为0时,控件显示如图6-4所示标准样式;值为1时,控件外观类似命令按钮。 一般说来,单选钮总是作为一个组(单选钮组)发挥作用的。图6-4关于颜色的单选钮就是一个按钮组。,2事件 单选钮常用事件是Click事件。 【例6.2】程序运行后,单击某个单选钮,在标签中显示相应的字体。运行结果如图6-5所示。 分析:需要在窗体上建立一个标签和3个单选钮,其主要属性设置如表6-2所示。,事件过程代码如下: Private Sub kai_Click() Label1.FontName = 楷体_gb2312 End Sub Private Sub li_Click() Label1.FontName = 隶书 End Sub Private Sub song_Click() Label1.FontName = 宋体 End Sub,6.2.2 复选框 复选框(CheckBox)也称检查框,单击复选框一次时被选中,左边出现“”号,再次单击则取消选中,清除复选框中的“”。可同时使多个复选框处于选中状态,这一点和单选按钮不同。如图6-6所示,有四个复选框。,1属性 (1)Value属性 决定复选框的状态:0未选中,1已选中,2变灰暗。 (2)Picture属性 用来指定当复选框被设计成图形按钮时的图像。 2事件 复选框常用事件为Click事件。,【例6.3】用复选框控制文本是否加下划线和斜体显示。在程序执行期间,如果选定“加下划线”复选框,则文本框中的内容就加上了下划线,如果清除“加下划线”复选框,则文本框中的内容就没有下划线;如果选定“斜体”复选框,则文本框中的文字字形就变成斜体,如果清除“斜体”复选框,则文本框中的文字字形就不是斜体。运行界面如图6-7所示。,设计界面: 在窗体上建立一个文本框,两个复选框。3个控件的属性如表6-3所示。,编写如下事件过程: Private Sub Check1_Click() If Check1.Value = 1 Then Text1.FontUnderline = True Else Text1.FontUnderline = False End If End Sub,Private Sub Check2_Click() If Check2.Value = 1 Then Text1.FontItalic = True Else Text1.FontItalic = False End If End Sub Private Sub Form_Load() Text1.FontSize = 20 End Sub,6.3 容器与框架,所谓容器,就是可以在其上放置其它控件对象的一种对象。窗体、图片框和框架都是容器。容器内所有控件成为一个组合,随容器一起移动、显示、消失和屏蔽。 在前一节例6.2中,是在一个窗体上建立一组单选按钮,若要在同一窗体上建立几组相互独立的单选按钮,通常用框架控件(Frame)将每一组单选钮框起来,这样在一个框架内的单选钮成为一组,对一组单选钮的操作不会影响其它组的单选钮。,在窗体上创建框架及其内部控件时,应先添加框架控件,然后单击工具箱上的控件,用“+”指针在框架中以拖拽的方式添加控件,框架内的控件不能被拖出框架外。不能用双击的方式向框架中添加控件,也不能先画出控件再添加框架。如果要用框架将窗体上现有的控件进行分组,可先选定控件,将它们剪切后粘贴到框架中。,1属性 (1)Caption属性 框架的标题,位于框架的左上角,用于注明框架的用途。 (2)Enabled属性 决定框架中的对象是否可用,通常把Enabled属性设置为True,以使框架内的控件成为可以操作的。 2事件 Click和DblClick。在大多数情况下,我们用框架控件对控件进行分组,没有必要响应它的事件。,【例6.4】使用两个单选钮组来改变文本框中文字的颜色和大小。运行结果如图6-8所示。 设计界面: 在窗体上添加一个标签控件,一个命令按钮;添加一个框架控件,在框架控件上画上3个单选钮控件(颜色按钮组);再添加一个框架控件,在框架控件上画上两个单选钮控件(字体大小按钮组)。两个框架的Caption 属性分别设置为“颜色”和“字体大小”,其它控件属性的设置可以按照图6-8所示自己进行。,编写代码如下: Private Sub Command1_Click() end End Sub Private Sub Option1_Click() 蓝色单选钮 Label1.ForeColor = &HFF0000 End Sub Private Sub Option2_Click() 红色单选钮 Label1.ForeColor = &HFF& End Sub,Private Sub Option3_Click() 绿色单选钮 Label1.ForeColor = &HFF00& End Sub Private Sub Option4_Click() 文字大小10单选钮 Label1.FontSize = 10 End Sub Private Sub Option5_Click() 文字大小20单选钮 Label1.FontSize = 20 End Sub,6.4 列表框与组合框,列表框(ListBox)控件将一系列的选项组合成一个列表,用户可以选择其中的一个或几个选项,但不能向列表清单中输入项目;组合框(ComboBox)控件是综合文本框和列表框特性而形成的一种控件,用户可通过在组合框中输入文本来选定项目,也可从列表中选定项目。,6.4.1 列表框 列表框控件(ListBox)的主要用途在于提供列表式的多个数据项供用户选择。在列表框中放入若干个项的名字,用户可以通过单击某一项或多项来选择自己所需要的项目。如果放入的项较多,超过了列表框设计时可显示的项目数,则系统会自动在列表框边上加一个垂直滚动条。,1属性 (1)List属性 该属性是一个字符串数组,用来保存列表框中的各个数据项内容。 List数组的下标从0开始,即List(0)保存表中的第一个数据项的内容。List(1)保存第二个数据项的内容,依次类推,List(ListCount-1)保存表中的最后一个数据项的内容。 在窗体上添加一个列表框,其外观如图6-9所示,图上所显示的“List1”是控件的名称,而不是列表项中的数据项。,(2)ListCount属性 该属性记录了列表框中的数据项数,该属性只能在程序中引用它。 (3)Text属性 用于存放被选中列表项的文本内容。该属性是只读的,不能在属性窗口中设置,也不能在程序中设置,只用于获取当前选定的列表项的内容。可在程序中引用Text属性值。,(4)ListIndex属性 该属性是List数组中,被选中的列表项的下标值(即索引号)。如果用户选择了多个列表项,则ListIndex是最近所选列表项的索引号;如果用户没有从列表框中选择任何一项,则ListIndex为1。程序运行时,可以使用ListIndex属性判断列表框中哪一项被选中。 例如,在列表框List1中选中第2项,即List1.List数组的第2项,则ListIndex1(ListIndex从0开始)。 ListIndex属性不能在设计时设置,只有程序运行时才起作用。,(5)Selected属性 该属性是一个逻辑数组,其元素对应列表框中相应的项。表示相应的项在程序运行期间是否被选中。例如,Selected(0)的值为True,表示第一项被选中,如为False,表示未被选中。 (6)MultiSelect(多选择列表项)属性 该属性值表明是否能够在列表框控件中进行复选以及如何进行复选。它决定用户是否可以在控件中做多重选择,它必须在设计时设置,运行时只能读取该属性。Multiselect属性值的说明如表6-4所示。,(7)SelCount属性 其值表示在列表框控件中所选列表项的数目,只有在MultiSelect属性值设置为1(Simple)或2(Extended)时起作用,通常与Selected数组一起使用,以处理控件中的所选项目。,2方法 ListBox对应的控件方法有:AddItem,Clear和RemoveItem (1)AddItem方法 该方法向一个列表框中加入列表项,其语法是: Listname.AddItem item,index (2)RemoveItem方法 该方法用于删除列表框中的列表项,其语法是: Listname.RemoveItem index,(3)Clear方法 该方法删除列表框控件中的所有列表项。其语法是: Listname.Clear 【例6.5】利用列表框和命令按钮编程,要求程序能够实现添加项目、删除项目、删除全部项目的功能。 设计界面: 在窗体上添加一个列表框(ListBox)控件,3个命令按钮。属性设置如表6-5所示。,在程序中添加如下代码: Private Sub Command1_Click() Dim entry entry = InputBox(输入添加内容,添加) List1.AddItem entry 添加项目 End Sub,Private Sub Command2_Click() Dim i As Integer For i = List1.ListCount - 1 To 0 Step -1 If List1.Selected(i)Then List1.RemoveItem i 删除选中项目 Next i End Sub Private Sub Command3_Click() List1.Clear 全部删除 End Sub 运行结果如图6-12所示。,6.4.2 组合框 组合框(ComoBox)是一种兼有列表框和文本框的功能的控件。它可以像列表框一样,让用户通过鼠标选择所需要的项目;也可以像文本框一样,用键入的方式选择项目。 1属性 (l)Style属性 这是组合框的一个重要属性,其取值为0,1,2,它决定了组合框3种不同的类型,分别为下拉式组合框、简单组合框和下拉式列表框。如图6-13所示。,(2)Text属性 该属性值是用户所选择的项目的文本或直接从编辑区输入的文本。 2事件 组合框所响应的事件依赖于其Style属性。 【例6.6】设计一个简单的报名窗口,要求界面如图6-14所示,从文本框中输入学生姓名,在“班级”旁边的组合框中选择其所属班级(提供4种默认班级:电气081、微机081、网络081、电子081,用户可以输入其它的班级名)。然后将学生姓名和班级添加到列表框中。用户可以删除列表框中所选择的项目,也可以把整个列表框清空。,设计界面如下: 在窗体上加入3个标签,一个文本框,一个组合框,一个列表框,以及3个命令按钮。各控件属性设置如表6-6所示。,程序如下: Private Sub Command1_Click() If(Text1.Text )And(Combo1.Text )Then List1.AddItem Text1.Text + + Combo1.Text Else MsgBox(请输入添加内容!) End If End Sub,Private Sub Command2_Click() Dim i As Integer If List1.ListIndex = 0 Then For i = List1.ListCount - 1 To 0 Step -1 If List1.Selected(i)Then List1.RemoveItem i 删除被选中的项目 Next i End If End Sub,Private Sub Command3_Click() List1.Clear 清空列表 End Sub Private Sub Form_Load() Combo1.AddItem 电气991 Combo1.AddItem 微机991 Combo1.AddItem 网络991 Combo1.AddItem 电子991 Combo1.Text = Combo1.List(0) End Sub 程序运行界面如图6-15所示。,6.5 滚动条,滚动条通常用来附在窗体边上帮助观察数据或确定位置,作为速度、数量的指示器来使用,也可用来作为数据输入的工具。 滚动条分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar),如图6-16 所示。除方向不一样外,水平滚动条和垂直滚动条的结构与操作是完全相同的。,滚动条的两端各有一个滚动箭头,在滚动箭头之间有一个滚动块。滚动块从一端移至另一端时,其值在不断变化。垂直滚动条的值由上往下递增,水平滚动条的值由左往右递增。其值均以整数表示,取值范围为3276832767。最小值和最大值分别在两个端点,其坐标系和滚动条的长度(高度)无关。 1属性 (1)Max属性 滚动条所能表示的最大值。 (2)Min属性 滚动条所能表示的最小值。,(3)Value属性 表示当前滚动条所代表的值,范围在Max与Min之间。 (4)LargeChang属性 当用户单击滚动块和滚动箭头之间的区域时,滚动条控件(HScrollBar 或 VScrollBar)的 Value 属性值的改变量,默认值为1。 (5)SmallChange属性 表示当用户单击滚动条两端的箭头时,Value属性值的增加或减小的量,默认值为1。,2事件 滚动条的最常用的是Change事件和Scroll事件。 【例6.7】利用滚动条改变文本框中所显示文本的字号大小。要求程序运行效果如图6-17所示。,程序代码如下: Private Sub HScroll1_Change() Label1.Caption = HScroll1.Value Text1.FontSize = HScroll1.Value End Sub,6.6 焦点与Tab顺序,焦点与Tab顺序是和控件接受用户输入有关的两个概念。 6.6.1 焦点 焦点是对象鼠标或键盘输入的能力。当对象具有焦点时,就可以接受用户的输入。 当对象得到焦点时发生GetFocus事件,当对象失去焦点时发生LostFocus事件。,可用以下方法将焦点赋给对象: (1)用鼠标选择对象,用Tab键移动,或用快捷键; (2)程序代码中用SetFocus方法可以设置焦点。例如,可以在 Form1窗体的Load事件中添加如下代码,使得程序开始时光标(焦点)位于文本框Text3中。 Private Sub Form_Load() Form1.show 显示Form1窗体 Text2.Setfocus 使焦点位于文本框Text2中 End Sub,使用以下方法可以使对象失去焦点: (1)用鼠标单击选择另一个对象,用Tab键移动,或用快捷键: (2)代码中对另一个对象使用SetFocus方法改变焦点。 说明:当对象的Enabled和Visible属性都为True时,它才能接受焦点。 6.6.2 Tab顺序 所谓Tab顺序,就是用户按Tab键时,焦点在各个控件之间移动的顺序。在一般情况下,Tab顺序由控件建立时的先后顺序确定。 可以通过设置控件的TabIndex属性来改变它的Tab顺序。TabIndex属性值决定了它在Tab顺序中的位置。,
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!