第5章 常用控件与窗体【共享精品-ppt】_第1页
第5章 常用控件与窗体【共享精品-ppt】_第2页
第5章 常用控件与窗体【共享精品-ppt】_第3页
第5章 常用控件与窗体【共享精品-ppt】_第4页
第5章 常用控件与窗体【共享精品-ppt】_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

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

文档简介

第5章 常用控件与窗体,5.1 标签控件 5.2 命令按钮控件 5.3 文本框控件 5.4 单选钮和检查框 5.5 框架 5.6 滚动条 5.7 列表框 5.8 组合框 5.9 时钟 5.10 窗体 习题五,5.1 标 签 控 件,5.1.1 标签的属性 标签最常用的属性有Name、Caption、Height、Width、Top、Left、Enabled、Visible、 FontName、 FontSize、 FontBold、 FontItalic、 FontUnderline、 Alignment、Autosize和BorderStyle等。,5.1.2 标签接收的事件 标签经常接收的事件有单击(Click)、双击(DblClick)和改变(Change)。,5.2 命令按钮控件,在应用程序中,命令按钮的应用十分广泛。在程序执行期间,当用户选择某个命令按钮时就会执行相应的事件过程。在程序运行时,常用以下三种方法选中命令按钮:(1) 用鼠标单击。(2) 按Tab键将焦点移到相应按钮上,再按回车键。(3) 按快捷键(Alt有下划线的字母)。,5.2.1 命令按钮的属性 1基本属性 命令按钮最常用的基本属性有Name、Height、Width、Top、Left、Enabled、Visible、FontName、FontSize、BackColor和Index等。 2Caption(标题)属性 在设置Caption属性时,如果在某个字母前加入“&”,则程序运行时标题中的该字母带有下划线,该带有下划线的字母就成为快捷键。当用户按下Alt快捷键时,便可激活并操作该按钮。例如,在对某个按钮设置其Caption属性时键入&OK,程序运行时就会显示OK,当用户按下AltO时便可激活并操作OK按钮。,3Default(确认)属性 只有命令按钮支持Default属性。当Default属性值为True时,按Enter键相当于用鼠标器单击了该按钮。在一个窗体中只能有一个按钮的Default属性被设为True。当某按钮的Default属性值被设为True以后,该窗体中的所有其它按钮的Default属性全部被自动设为False。 4Cancel(取消功能)属性 当Cancel属性值为True时,按此按钮与按Esc键的效果相同。在一个窗体中只能有一个按钮的Cancel属性可为True,其它按钮的Cancel属性自动变为False。,5Value(检查按钮状态)属性 该属性在设计阶段无效,只能在程序运行期间设置或引用,用于检查该按钮是否被按下。True表示该按钮被按下,False(缺省)表示按钮未被按下。在程序运行过程中,只要Value值为True,便引发按钮的Click事件转去执行相应的程序。,6Picture(图片)属性 要说明的是,在以前的版本中,有两种命令按钮控件:标准命令按钮(CommandButton)和三维命令按钮(SSCommand)。前者按钮上只能显示文字;后者可以显示图形,可用于工具栏按钮的制作。在Visual Basic 5.0中,两者合一,并且可在Style属性中区分标准和图形。对图形的命令按钮增加了Picture属性,用以显示图片文件(.bmp和.ico)。Visual Basic中的图片文件存放在Visual Basic文件夹的Graphic子文件夹中。,7Style属性 该属性返回或设置一个值,该值用来指示控件的显示类型和行为。在运行时是只读的。 0standard(缺省):标准的,按钮上不能显示图形。 1graphical:图形的,按钮上可以显示图形的样式,也能显示文字。 若在Picture(图片)属性中选择了图片文件,则Style属性值必须为1,否则无法显示图形。,8ToolTipText(工具提示)属性 ToolTipText属性与Picture(图片)属性同时使用。如果仅用图像作为对象的标签,那么能够使用此属性以较少的文字解释每个对象。在以前的版本中,用户要设计具有工具栏提示功能的界面,需要编写一段程序来实现,现在通过该属性就可以轻而易举地实现了。,5.2.2 命令按钮接收的事件命令按钮主要接收Click事件。,5.3 文 本 框 控 件,5.3.1 文本框的属性 1基本属性 Name、Height、Width、Top、Left、Enabled、Visible、FontName、FontSize、FontBold、FontItalic、FontUnderline和Alignment等都是文本框的基本属性。文本框没有Caption属性。 2Text文本属性 在文本框中显示的正文内容存放在Text属性中。当程序执行时,用户通过键盘输入正文内容,Visual Basic自动将其保存在Text属性中。,3MaxLength属性 MaxLength属性指明文本框中能够输入的正文内容的最大长度。 0值:任意长字符串。 非零值:文本框中字符个数的最大值。需注意的是,在Visual Basic中一个汉字的长度相当于一个西文字符。 4MultiLine(多行)属性 当MultiLine属性为True时,文本框可以输入或显示多行正文,同时具有文字处理器的自动换行功能,即输入的正文超出显示框时,会自动换行。按CtrlEnter可插入一空行。,5ScrollBars(滚动条)属性 当MultiLine属性为True时,ScrollBars属性才有效。ScrollBars不同的值表示不同的含义。0None:无滚动条;1Horizontal:加水平滚动条;2Vertical:加垂直滚动条;3Both:同时加水平和垂直滚动条。 当加入了水平滚动条以后,文本框内的自动换行功能会自动消失,只有按Enter键才能回车换行。,6Locked属性 Locked属性指定文本控件是否可被编辑,默认值为False,表示可编辑。当设置为True时,文本控件相当于标签的作用。,7SelStart、SelLength和SelText属性 在程序运行中,对文本内容进行选择操作时,这三个属性用来标识用户选中的正文。SelStart:选定的正文的开始位置,第一个字符的位置是0;SelLength:选定的正文长度;SelText:选定的正文内容。 设置了SelStart和SelLength属性后,Visual Basic会自动将设定的正文送入SelText存放。这些属性一般用于在文本编辑中设置插入点及范围、选择字符串和清除文本等,并且经常与剪贴板一起使用,完成文本信息的剪切、复制及粘贴等功能。,【例5-1】 文本框的应用示例:将第一个文本框的内容拷贝到第二个文本框中。,Private Sub Form_Click( )Text1.SelStart0Text1.SelLength=24Text2.Text=Text1.SelTextEnd Sub程序运行结果如图5.1所示。,图5.1 文本框示例运行结果,5.3.2 文本框响应的事件 在文本框所能响应的事件中,Change、KeyPress和LostFocus是最重要的事件。 1Change事件 当用户输入新内容或当程序将Text属性设置为新值从而改变文本框的Text属性时会引发该事件。当用户键入一个字符时,就会引发一次Change事件。例如,用户键入Hello一词时,会引发5次Change事件。,2KeyPress事件 当用户按下并且释放键盘上的一个键(ANSI格式)时,就会引发焦点所在控件的KeyPress事件,此事件会返回一个KeyAscii参数到该事件过程中。例如,当用户键入字符“a”时,返回KeyAscii的值为96,通过Chr(KeyAscii)可以将ASCII码转换为字符“a”。同Chang事件一样,每输入一个字符就会引发一次该事件。事件中最常用的是对键入符是否为回车符(KeyAscii的值为13)的判断,若是则表示文本的输入结束。,3LostFocus事件 此事件是在一个对象失去焦点时发生的。焦点的丢失是由于Tab移动或单击另一个对象操作所造成的结果。LostFocus事件过程主要是用来对数据更新进行验证和确认,常用于检查Text属性的内容,比在Change事件过程中检查Text文本内容更为有效。,5.3.3 文本框使用的方法 文本框最有用的方法是SetFocus,该方法是把光标移到指定的文本框中。当在窗体上建立了多个文本框后,可以用该方法把光标置于所需要的文本框上。其形式如下:对象.SetFocus SetFocus还可以用于如CheckBox、CommandButton和ListBox等控件。,5.4 单选钮和检查框,5.4.1 单选钮和检查框的属性 1基本属性 单选钮和检查框最常用的基本属性有Name、Width、Height、Top、Left、ForeColor、BackColor、Enabled、Visible和Index等。 2Caption属性 该属性设置单选钮或检查框的文本注释内容,即单选钮或检查框边上的文本标题。,3Alignment属性 0:控件钮在左边,标题显示在右边,缺省设置。1:控件钮在右边,标题显示在左边。 4Value属性 该属性表示单选钮或检查框的状态。 单选钮为True表示单选钮被选定,为False表示单选钮未被选定,缺省设置。检查框有下面三种状态:0Unchecked:检查框未被选定,缺省设置;1Checked:检查框被选定;2Grayed:检查框变成灰色,禁止用户选择。,5Style属性 Style属性是指定单选钮或检查框的显示方式,用于改善单选钮或检查框的视觉效果。 0Standard:标准方式; 1Graphical:图形方式。 当该属性设置为1(Standard)时,就可以在Picture、DownPicture和Disabled Picture中分别设置不同的图标或位图,用三种不同的图形分别表示未选定、选定和禁止选择。,5.4.2 单选钮和检查框接收的事件 单选钮和检查框都可以接收Click事件,但一般不需要编写Click事件过程。因为当用户单击单选钮或检查框时,它们自动改变状态。,5.5 框 架,5.5.1 框架的属性 1基本属性 框架的基本属性有Name、Width、Height、Top、Left、BackColor、Font、ForeColor和Index等。,2Caption属性 由Caption属性值设定框架上的标题名称。如果Caption为空字符,则框架为封闭的矩形框,但是框架中的控件仍然与单纯用矩形框起来的控件不同。 框架内的所有控件将随框架一起移动、显示、消失和屏蔽。若将框架的Enabled属性设为False,程序运行时该框架在窗体中的标题正文为灰色,表示框架内的所有对象均被屏蔽,不允许用户对其进行操作。若将框架的Visible属性设为False,则在程序执行期间,框架及其所有控件全部被隐藏起来,也就是说,对框架的操作也是对其内部的控件的操作。,5.5.2 框架响应的事件 框架可以响应Click和DblClick事件。但是,在应用程序中一般不需要编写有关框架的事件过程。 【例5-2】 单选按钮、复选框和框架的应用示例。运行结果如图5.2所示。 (1) 用户界面的设计以及属性设置,如图5.3所示。,图5.2 选择控件示例显示结果,图5.3 选择控件示例界面,(2) 事件驱动的响应程序。 是否加下划线Private Sub Check1_Click( ) If Check1.Value = 1 Then Text1.FontUnderline = True Else Text1.FontUnderline = False End IfEnd Sub 是否斜体显示 Private Sub Check2_Click( ) If Check2.Value = 1 Then,Text1.FontItalic = True Else Text1.FontItalic = False End If End Sub 单击Command按钮后Text文本框中的字体为黑体宋体,字号为1224 Private Sub Command1_Click( ) If Option1.Value Then Text1.FontName = 宋体 Else Text1.FontName = 黑体 End If,If Option3.Value Then Text1.FontSize = 12 Else Text1.FontSize = 24 End If End Sub 终止程序 Private Sub Command2_Click( ) Unload Me End Sub,5.6 滚 动 条,5.6.1 滚动条的属性 1基本属性 滚动条的基本属性有Name、Height、Width、Top、Left、Enabled和Visible等。 2Max(最大值)属性 该属性表示当滑块处于滚动条最大位置时所代表的值。 3Min(最小值)属性 该属性表示当滑块处于滚动条最小位置时所代表的值。,4SmallChange(最小变动值)属性 该属性表示用户单击滚动条两端箭头时,滑块移动的增量值。 5LargeChange(最大变动值)属性 该属性表示用户单击滚动条的空白处时,滑块移动的增量值。 6Value(值)属性 该属性表示滚动条内滑块所处位置所代表的值(-32 76832 767)。,5.6.2 滚动条响应的事件 与滚动条有关的重要事件是Scroll和Change。当拖动滑块时会触发Scroll事件,而当改变Value属性时(滚动条内滑块位置改变)会触发Chang事件。 【例5-3】 编写使用滚动条计算利息的应用程序。当通过滚动条改变本金、月份或年利率时,能立即计算出利息及利息+本金。窗体上有5个文本框:本金、月份、年利率、利息和利息+本金,其名称分别为:vsbPrincipal、hsbMonth、hsbRate、txtInterest和txtTotal。各滚动条的属性按表5.1所示进行设置。,表5.1 各滚动条的属性设置,过程Calc的功能是根据本金、月份和年利率计算利息及本金+利息,它将被各滚动条的Change事件过程调用:Sub Calc( ) Dim sTotal As Single sTotalsbPrincipal.Value*(1+(hsbRate.Value/100)*(hsbMonth.Value/12) txtTotal.Text=sTotal txtInterest.Text=sTotal-vsbPrincipal.ValueEnd Sub,下面是各滚动条的事件过程:Sub vsbPrincipal_change( ) TxtPrincipal.TextvsbPrincipal.Value CalcEnd Sub Sub hsbMonth_Change( ) txtMonth.Text = hsbMonth.Value Calc End Sub Sub hsbRate_Change( )txtRate.Text = hsbRate.ValueCalcEnd Sub,5.7 列 表 框,5.7.1 列表框的属性 1基本属性 列表框的基本属性有Name、Height、Width、Top、Left、Enabled、Visible、FontName和FontSize等。 2List属性 该属性是一个字符型数组,存放列表框的项目。List数组的下标是从0开始的,也就是说,第一个元素的下标是0。List属性既可以在设计状态设置,也可以在程序中设置或引用。,3ListIndex属性 该属性只能在程序中设置或引用。ListIndex的值表示执行时选中的列表项序号。如果未选中任何项,则ListIndex的值为-1。 4ListCount属性 该属性只能在程序中设置或引用。 ListCount的值表示列表框中项目的数量。ListCount-1表示列表中最后一项的序号。,5Selected属性 该属性只能在程序中设置或引用。Selected属性是一个逻辑数组,其元素对应列表框中相应的项,表示对应的项在程序运行期间是否被选中。例如, Selected(0)的值为True表示第一项被选中,为False表示未被选中。 6Sorted属性 该属性只能在设计状态设置。Sorted属性决定列表框中项目在程序运行期间是否按字母顺序排列显示。如果Sorted为True,则项目按字母顺序排列显示;如果Sorted为False,则项目按加入先后顺序排列显示。,7Text属性 该属性是默认属性,只能在程序中设置或引用。Text属性值是被选中列表项的文本内容。 List(ListIndex)等于Text。,8MultiSelect属性 该属性有下面三种状态: 0None:禁止多项选择; 1Simple:简单多项选择,用鼠标器单击或按空格键表示选定或取消选定一个选择项。 2Extended:扩展多项选择,按住Ctrl键同时用鼠标器单击或按空格键,表示选定或取消选定一个选择项;按住Shift键同时单击鼠标,或者按住Shift键并且移动光标键,就可以从前一个选定的项扩展选择到当前选择项,即选定多个连续项。,5.7.2 列表框使用的方法 列表框中的选择项可以简单地在设计状态通过List属性设置,也可以在程序中用AddItem方法来填写,用RemoveItem或Clear方法删除。 (1) 用AddItem方法把一个项目加入列表框。其形式如下: 对象.AddItem item index 说明: 对象可以是列表框或组合框,即AddItem方法可适用于列表框和组合框。item必须是字符串表达式,是将要加入列表框或组合框的项目。index决定新增项目在列表框或组合框中的位置。如果index省略,则新增项目添加在最后。对于第一个项目,index为0。,(2) 用RemoveItem方法从列表框中除去一个项目。其形式如下: 对象.RemoveItem index 说明: 对象可以是列表框或组合框,即RemoveItem方法可适用于列表框和组合框。index是被删除项目在列表框或组合框中的位置。对于第一个元素,index为0。 (3) Clear方法可清除列表框的所有内容。其形式如下: 对象.Clear 说明: 对象可以是列表框、组合框或剪贴板,即Clear方法适用于列表框、组合框和剪贴板。,【例5-4】 通过列表框控件设计选项移动的窗体。列表框运行结果如图5.4所示。 (1) 界面设计如图5.5所示。,图5.4 列表框示例显示结果,图5.5 列表框示例界面设计,(2) 响应事件的程序如下:初始化列表框Private Sub Form_Load()List1.AddItem 语文List1.AddItem 数学List1.AddItem 英语List1.AddItem 物理List1.AddItem 化学List1.AddItem 计算机End Sub, 控件按钮实现转换Private Sub Command1_Click(Index As Integer)Select Case IndexCase 0 按钮的实现i = 0Do While i 的实现For i = 0 To List1.ListCount - 1List2.AddItem List1.List(i)NextList1.ClearCase 2 按钮的实现.Case 3 按钮的实现.End SelectEnd Sub,5.8 组 合 框,1下拉式组合框 下拉式组合框的Style属性为0(缺省),显示在屏幕上的仅是文本编辑框和一个下拉箭头。执行时,用户可用键盘直接在文本框区域键入文本内容,也可用鼠标单击右边的下拉箭头,打开列表框供用户选择,选中的内容显示在文本框上。这种组合框允许用户键入不属于列表内的选项。当用户再用鼠标单击下拉箭头时,下拉出来的列表项就会消失,仅显示文本框信息。,2简单组合框 简单组合框的Style属性为1。它列出所有的项目供用户选择,右边没有下拉箭头,列表框不能被收起和拉下,与文本编辑框一起显示在屏幕上。可以在文本框中用键盘输入列表框中没有的选项。 3下拉式列表框 下拉式列表框的Style属性为2。其功能与下拉式组合框类似,区别是不能输入列表框中没有的项。 组合框拥有列表框和文本框的大部分属性。组合框也有SelLength、SelStart和SelText这三个文本框特有的属性。,【例5-5】 利用组合框设计一个“简易抽奖机”。(1) 进行界面设计以及对象属性设置。(2) 编写如下事件代码: 组合框的事件响应Private Sub Combo1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then 表示按下的是回车键 Combo1.AddItem Combo1.Text, 0 向组合框输入号码 Combo1.SelStart = 0 Combo1.SelLength = Len(Combo1.Text) End If If KeyAscii = 27 Then 表示按下的是Esc键 If Combo1.ListIndex -1 Then,Combo1.RemoveItem Combo1.ListIndex 移去选项 End If End IfEnd Sub 按钮开始抽奖的代码实现Private Sub Command1_Click( ) Randomize n = Combo1.ListCount a = Int(Rnd * n) 利用随机函数求随机序号 Combo1.ListIndex = a MsgBox 中奖的号码是: & Chr(13) & Combo1.Text, 0, 恭喜End Sub,(3) ComboBox示例界面及运行结果分别如图5.6和图5.7所示。,图5.6 ComboBox示例界面,图5.7 ComboBox示例运行结果,5.9 时 钟,一个时钟(Timer)控件能有规律地以一定的时间间隔激发计时器事件(Timer)而执行相应的程序代码。时钟控件有一个非常重要的属性Interval(时间间隔),它表示两个计时器事件之间的时间间隔,其值以ms(0.001 s)为单位,介于064 767 ms之间,所以最大的时间间隔约为1.5 min。在程序运行期间,时钟控件并不显示在屏幕上,通常用一个标签来显示时间。当Interval为0时表示屏蔽计时器。如果希望每0.5 s产生一个计时器事件,那么Interval属性值应设为500。这样,每隔500 ms引发一次计时器事件(Timer),从而执行相应的Timer事件过程。时钟控件只有一个Timer事件。,5.9.1 时钟的属性1基本属性时钟控件具有Name、Left、Top和Index等基本属性。2Enabled属性该属性有下面两种选择:True:使时钟控件有效,开始有效计时;False:停止时钟控件工作。,5.9.2 时钟响应的事件 时钟控件只有一个Timer事件。 【例5-6】 用一个时钟控件控制蝴蝶在窗体内飞舞。程序运行结果如图5.8所示。在窗体上定义一个时钟、一个命令按钮和三个图像控件。窗体与其上的控件的属性如表5.2所示。程序界面如图5.9所示。,表5.2 窗体界面控件属性设置,图5.8 运行结果显示,图5.9 程序界面设计,各事件的代码如下:Private Sub Form_Load( ) CmdEnd.Move 10, 10 移动CmdEnd按钮到指定位置 imgMain.Move 1000, 1000End Sub TmrClockTimer( )事件使时钟控件每100 ms交替显示不同的图形Private Sub tmrClock_Timer( )Static PickBmp As Boolean 定义图像交替控制指针ImgMain.Move ImgMain.Left + 20, ImgMain.Top-5 If PickBmp ThenImgMain.Picture = OpenWings.Picture 显示蝴蝶图像1ElseImgMain.Picture = CloseWings.Picture 显示蝴蝶图像2End If,PickBmp = Not PickBmp 图像交替控制指针End Sub 命令按钮Cmd End结束程序Private Sub CmdEnd_Click( ) EndEnd Sub,5.10 窗 体,5.10.1 窗体的属性 窗体属性决定了窗体的外观和操作。对大部分窗体属性,既可以通过属性窗口设置,也可以在程序中设置,只有少量属性只能在设计状态设置,或只能在窗体运行期间设置。 1窗体基本属性 窗体的基本属性有Name、Height、Width、Left、Top、Font、Enabled、Visible、ForeColor、BackColor、Picture和Image等。 2Caption属性 Caption属性决定窗体标题栏显示的内容。,3MaxButton和MinButton属性 MaxButton属性为True,窗体右上角有最大化按钮;MinButton属性为True,窗体右上角有最小化按钮;MaxButton属性为False,窗体上没有最大化按钮。MinButton属性为False,窗体上没有最小化按钮。 4ControlBox属性 ControlBox属性为True,窗体左上角有一个控制菜单框;ControlBox属性为False,窗体上没有控制菜单框。,5BorderStyle边框风格属性0None:窗口无边框;1Fixed Single:窗口为单线边框,不可以改变窗口大小;2Sizable:窗口为双线边框,可以改变窗口大小;3Fixed Double:窗口具有双线框架,不可以改变窗口大小。 6Icon属性 在属性窗口中,可以单击设置框右边的(省略号),打开一个Load Icon对话框,用户可以选择一个图标文件装入,当窗体最小化时以该图标显示。,7MDIChild属性 如果将MDIChild属性设为True,表示该窗体是MDI子窗体。父窗口(MDI窗体)是在工程菜单中添加MDI窗体命令建立的。 8WindowsState属性 该属性表示窗体执行时以什么状态显示。0Normal:正常窗口状态,有窗口边界;1最小化状态:以图标方式运行;2最大化状态:无边框,充满整个屏幕。,9AutoRedraw属性 该属性控制窗体图像的重建。在其它窗口覆盖某窗体后,又返回该窗体时,如果将AutoRedraw设置为True,则Visual Basic将自动刷新或者重画该窗体的所有图形,否则必须调用一个事件过程来执行这项任务。也就是说,只有当AutoRedraw设置为True时,才能重画如Circle、Cls、Point和Print等方法的输出。,5.10.2 窗体响应的事件 窗体最常用的事件有Click、DblClick、Load和Activate。窗体的Click和DblClick事件与控件相同。 Load是在窗体被装入工作区时触发的事件。该事件通常用来在启动应用程序时对属性和变量进行初始化。Activate是当一个窗体成为活动窗口时所触发的事件。用户单击某个窗体,或在程序代码中用Show方法显示窗体,或用SetFocus把焦点设置在某窗体上,都使该窗体成为活动窗口,此时触发Activate事件。,5.10.3 窗体使用的方法窗体上常用的方法有Print、Cls和Move。,5.10.4 多重窗体 前面各节设计了一些V

温馨提示

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

评论

0/150

提交评论