已阅读5页,还剩80页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章常用控件,1,VB中的控件分为三类:标准控件(内部控件)ActiveX控件可插入对象,2,第一节图片框与图像框,图片框控件(PictureBox)图像框控件(ImageBox)主要用于在窗体的指定位置显示图形信息。VB6.0支持.bmp、.ico、.wmf、.emf、.jpg、.gif等格式的图形文件。1Picture属性图片框和图像框中显示的图片由Picture属性决定。图形文件可以在设计阶段装入,也可以在运行期间装入。,3,(1)在设计阶段装入在设计阶段,可以用属性窗口中的Picture属性装入图形文件。(2)在运行期间装入在运行期间,可以用LoadPicture函数把图形文件装入图片框或图像框中。语句格式如下:对象名.Picture=LoadPicture(filename),4,2AutoSize属性该属性用于图片框。决定控件是否自动改变大小以显示图像全部内容。缺省值为False,此时保持控件大小不变,超出控件区域的内容被裁减掉;若值为True时,自动改变控件大小以显示图片全部内容(注意:不是图形改变大小)。3stretch属性用于图像框。当该属性的取值为False时,图像控件将自动改变大小以与图形的大小相适应;当其值为True时,显示在控件中的图像的大小将完全适合于控件的大小,这时,图片可能会变形。,5,图片框、图像框的区别(1)图片框控件可以作为其它控件的容器。(2)图片框可以通过Print方法接收文本,而图像框则不能接收用Print方法输入的信息。(3)图像框比图片框占用的内存少,显示速度快。,6,第二节定时器,VB提供了一种叫定时器(Timer)的控件。定时器每隔一定的时间间隔就产生一次Timer事件(可理解为报时),用户可以根据这个特性设置时间间隔控制某些操作或用于计时。1Interval属性用来决定两次调用定时器的间隔,以ms为单位,取值范围为064767,所以最大时间间隔不能超过65s,该属性的缺省值为0,即定时器控件不起作用。,7,2事件定时器只支持Timer事件。对于一个含有定时器控件的窗体,每经过一段由属性Interval指定的时间间隔,就产生一个Timer事件。【例】建立数字计时器,要求每秒钟时间变化一次。设计界面:在窗体上添加一个定时器控件、一个标签,8,程序代码如下:PrivateSubTimer1_Timer()Label1.FontSize=48Label1.Caption=TimeEndSub,9,例:蝴蝶飞,PrivateSubTimer1_Timer()StaticpickbmpAsBooleanimage1.MovePicture1.Left+30,Picture1.Top-10IfpickbmpThenimage1.Picture=image2.PictureElseimage1.Picture=image3.PictureEndIfpickbmp=NotpickbmpEndSub,10,第三节单选钮与复选框,一、单选钮单选钮(OptionButton)通常成组出现,主要用于处理“多选一”的问题。用户在一组单选钮中必须选择一项,并且最多只能选择一项。当某一项被选定后,其左边的圆圈中出现一个黑点。,11,1属性(1)Value属性该属性表示单选按钮选中或不被选中的状态。True为选中;False为不被选中。(2)Caption属性该属性显示出现在单选钮旁边的文本。(3)Style属性该属性用来设置控件的外观。值为0时,控件显示标准样式;值为1时,控件外观类似命令按钮。,12,2事件:单选钮常用事件是Click事件。【例】程序运行后,单击某个单选钮,在标签中显示相应的字体。,13,事件过程代码如下:PrivateSubOption1_Click()Label1.FontName=宋体EndSubPrivateSubOption2_Click()Label1.FontName=隶书EndSubPrivateSubOption3_Click()Label1.FontName=楷体_gb2312EndSub,14,二、复选框复选框(CheckBox)也称检查框,单击复选框一次时被选中,左边出现“”号,再次单击则取消选中,清除复选框中的“”。可同时使多个复选框处于选中状态,这一点和单选按钮不同。,15,1属性(1)Value属性决定复选框的状态:0未选中,1已选中,2变灰暗。(2)Picture属性用来指定当复选框被设计成图形按钮时的图像。2事件复选框常用事件为Click事件。,16,【例】用复选框控制文本是否加下划线和斜体显示。,17,编写如下事件过程:PrivateSubCheck1_Click()IfCheck1.Value=1ThenText1.FontUnderline=TrueElseText1.FontUnderline=FalseEndIfEndSub,Text1.fontunderline=check1.value,18,PrivateSubCheck2_Click()IfCheck2.Value=1ThenText1.FontItalic=TrueElseText1.FontItalic=FalseEndIfEndSubPrivateSubForm_Load()Text1.FontSize=20EndSub,Text1.fontitalic=check2.value,19,第四节容器与框架,所谓容器,就是可以在其上放置其它控件对象的一种对象。窗体、图片框和框架都是容器。容器内所有控件成为一个组合,随容器一起移动、显示、消失和屏蔽。若要在同一窗体上建立几组相互独立的单选按钮,通常用框架控件(Frame)将每一组单选钮框起来,这样在一个框架内的单选钮成为一组,对一组单选钮的操作不会影响其它组的单选钮。,20,在窗体上创建框架及其内部控件时,应先添加框架控件,然后单击工具箱上的控件,用“+”指针在框架中以拖拽的方式添加控件,框架内的控件不能被拖出框架外。1属性(1)Caption属性框架的标题,位于框架的左上角,用于注明框架的用途。,21,(2)Enabled属性决定框架中的对象是否可用,通常把Enabled属性设置为True,以使框架内的控件成为可以操作的。2事件Click和DblClick。在大多数情况下,我们用框架控件对控件进行分组,没有必要响应它的事件。,22,【例】使用两个单选钮组来改变文本框中文字的颜色和大小。,23,编写代码如下:PrivateSubCommand1_Click()endEndSubPrivateSubOption1_Click()Label1.ForeColor=vbBlueEndSubPrivateSubOption2_Click()Label1.ForeColor=vbRedEndSub,24,PrivateSubOption3_Click()Label1.ForeColor=vbGreenEndSubPrivateSubOption4_Click()Label1.FontSize=10EndSubPrivateSubOption5_Click()Label1.FontSize=20EndSub,25,第五节列表框与组合框,一、列表框列表框(ListBox)控件将一系列的选项组合成一个列表,用户可以选择其中的一个或几个选项,但不能向列表清单中输入项目;,26,1属性(1)List属性该属性是一个字符串数组,用来保存列表框中的各个数据项内容。List数组的下标从0开始,即List(0)保存表中的第一个数据项的内容。List(1)保存第二个数据项的内容,依次类推.,27,(2)ListCount属性该属性记录了列表框中的数据项数,该属性只能在程序中引用它。LIST1.LISTCOUNT(3)Text属性用于存放被选中列表项的文本内容。该属性是只读的不能在属性窗口中设置,也不能在程序中设置,只用于获取当前选定的列表项的内容。可在程序中引用Text属性值。,PrivateSubList1_Click()Text1.Text=List1.TextEndSub,28,列表框和组合框,列表框各主要属性的值:List1.ListIndex=3(下标从0开始的)List1.ListCount=5List1.Selected(3)=True,其余为False。List1.Sorted=False,没有排序。List1.Text为“cox”,与List1.List(List1.ListIndex)相等,List1,列表框各主要属性的值:List1.ListIndex=0List1.ListCount=8List1.Selected(3)=True其余为False。List1.Sorted=FalseList1.Text为“李宁”,Combo1,29,1.共有的重要属性(P:可在程序中设置或引用,D:可在设计状态设置。)List:PD字符型数组,存放列表框的项目,下标是从0开始。ListIndex:P选中的项目的序号,没有项目被选定时为-1ListCount:P项目的数量,ListCount-1是最后一项的下标。Sorted:DTrue:按字母顺序排列。False:按加入先后顺序排列。Text:P列表项中被选定的内容,List1.List(List1.ListIndex)=List1.Text。,30,2.列表框的特有属性Selected:P逻辑数组。Selected(i)的值为True表示第i+1项被选中。MultiSelect0-None:禁止多项选择。1-Simple:简单多项选择。2-Extended:扩展多项选择。3.列表框的特有属性Style,31,4.方法AddItem对象.AddItemitem,indexRemoveItem对象.RemoveItemindexClear对象.Clear5.事件列表框:Click、DblClick。组合框:Click,只有简单组合框才有DblClick事件。一般不需要编写Click事件过程。通常在单击命令按钮或发生DblClick事件时才读取Text属性。,32,(4)ListIndex属性该属性是List数组中,被选中的列表项的下标值(即索引号)。如果用户没有从列表框中选择任何一项,则ListIndex为1。程序运行时,可以使用ListIndex属性判断列表框中哪一项被选中。例如,在列表框List1中选中第2项,则ListIndex1(ListIndex从0开始)。ListIndex属性不能在设计时设置,只有程序运行时才起作用。,33,(5)Selected属性该属性是一个逻辑数组,其元素对应列表框中相应的项。表示相应的项在程序运行期间是否被选中。例如,Selected(0)的值为True,表示第一项被选中,如为False,表示未被选中。(6)MultiSelect(多选择列表项)属性该属性值表明是否能够在列表框控件中进行复选以及如何进行复选。它决定用户是否可以在控件中做多重选择,它必须在设计时设置,运行时只能读取该属性。,34,(7)SelCount属性其值表示在列表框控件中所选列表项的数目,只有在MultiSelect属性值设置为1(Simple)或2(Extended)时起作用,通常与Selected数组一起使用,以处理控件中的所选项目。,35,2方法ListBox对应的控件方法有:AddItem,Clear和RemoveItem(1)AddItem方法该方法向一个列表框中加入列表项,其语法是:Listname.AddItemitem,index(2)RemoveItem方法该方法用于删除列表框中的列表项,其语法是:Listname.RemoveItemindex,36,(3)Clear方法该方法删除列表框控件中的所有列表项。其语法是:Listname.Clear【例】利用列表框和命令按钮编程,要求程序能够实现添加项目、删除项目、删除全部项目的功能。,37,38,在程序中添加如下代码:PrivateSubCommand1_Click()Dimentryentry=InputBox(输入添加内容,添加)List1.AddItementryEndSub,39,PrivateSubCommand2_Click()DimiAsIntegerFori=List1.ListCount-1To0Step-1IfList1.Selected(i)ThenList1.RemoveItemiendifNextiEndSubPrivateSubCommand3_Click()List1.ClearEndSub,40,二、组合框组合框(ComoBox)是一种兼有列表框和文本框的功能的控件。它可以像列表框一样,让用户通过鼠标选择所需要的项目;也可以像文本框一样,用键入的方式选择项目。(l)Style属性这是组合框的一个重要属性,其取值为0,1,2,它决定了组合框3种不同的类型,分别为下拉式组合框、简单组合框和下拉式列表框。,41,42,(2)Text属性该属性值是用户所选择的项目的文本或直接从编辑区输入的文本。2事件组合框所响应的事件依赖于其Style属性。【例】设计一个简单的报名窗口,要求界面如图所示,从文本框中输入学生姓名,在“班级”旁边的组合框中选择其所属班级(提供4种默认班级:电气991、微机991、网络991、电子991,用户可以输入其它的班级名)。然后将学生姓名和班级添加到列表框中。用户可以删除列表框中所选择的项目,也可以把整个列表框清空。,43,44,45,程序如下:PrivateSubCommand1_Click()If(Text1.Text“”)And(Combo1.Text“”)ThenList1.AddItemText1.Text+Combo1.TextElseMsgBox(请输入添加内容!)EndIfEndSub,46,PrivateSubCommand2_Click()DimiAsIntegerIfList1.ListIndex=0ThenFori=List1.ListCount-1To0Step-1IfList1.Selected(i)ThenList1.RemoveItemiNextiEndIfEndSub,47,PrivateSubCommand3_Click()List1.ClearEndSubPrivateSubForm_Load()Combo1.AddItem电气991Combo1.AddItem微机991Combo1.AddItem网络991Combo1.AddItem电子991Combo1.Text=Combo1.List(0)EndSub程序运行界面如图所示。,48,49,第六节滚动条和Slider控件,滚动条和Slider通常用来附在窗体边上帮助观察数据或确定位置,作为速度、数量的指示器来使用,也可用来作为数据输入的工具。滚动条分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar),如图所示。,50,51,滚动条的两端各有一个滚动箭头,在滚动箭头之间有一个滚动块。滚动块从一端移至另一端时,其值在不断变化。垂直滚动条的值由上往下递增,水平滚动条的值由左往右递增。其值均以整数表示,取值范围为3276832767。最小值和最大值分别在两个端点,其坐标系和滚动条的长度(高度)无关。(1)Max属性滚动条所能表示的最大值。(2)Min属性滚动条所能表示的最小值。,52,(3)Value属性表示滑块所处位置所代表的值,范围在Max与Min之间。(4)LargeChang属性当用户单击滚动块和滚动箭头之间的区域时,滚动条控件(HScrollBar或VScrollBar)的Value属性值的改变量,默认值为1。(5)SmallChange属性表示当用户单击滚动条两端的箭头时,Value属性值的增加或减小的量,默认值为1。,53,2事件滚动条的最常用的是Change事件和Scroll事件。【例】利用滚动条改变文本框中所显示文本的字号大小。,拖动滑块时,VALUE值改变时,54,55,程序代码如下:PrivateSubHScroll1_Change()Label1.Caption=HScroll1.ValueText1.FontSize=HScroll1.ValueEndSub,56,例:实验7.5PrivateSubForm_Load()Timer1.Interval=100HS1.Min=1HS1.Max=100HS1.Value=5HS1.LargeChange=1HS1.SmallChange=1Label1.FontSize=Int(1+Rnd*30)Label1.Top=Int(Rnd*ScaleHeight)Label1.Left=Form1.WidthEndSub,57,PrivateSubTimer1_Timer()Label1.MoveLabel1.Left-HS1.Value*100IfLabel1.Left0ThenLabel1.Left=Form1.WidthLabel1.Top=Int(Rnd*ScaleHeight)Label1.FontSize=Int(1+Rnd*30)EndIfEndSub,58,第七节多媒体控件-Animation控件,该控件只能播放无声的视频动画AVI文件。文件复制进度栏就是使用Animation控件的一个实例。在执行复制操作时,纸页从一个文件夹“飞”到另一个文件夹。,59,一、控件的添加:二、控件的属性:三、控件的方法:打开文件object.openfile播放文件object.play停止播放object.stop关闭文件object.close,60,多媒体控件-MultimediaMCI控件,一、特点:多媒体控件(MultimediaMCI)控件用于管理媒体控制接口(MCI)设备。这些设备包括了常规的多媒体音频、视频设备。它们是:声卡、MIDI序列发生器、CD-ROM驱动器、视频播放器和音频播放器等设备。,61,MCI控件可以对这些设备进行常规的启动、播放、前进等管理操作。该控件表现为一组执行MCI命令的按钮,外观类似CD机或录象机上的按键。按钮被分别定义为Prev、Next、Play、Pause、Back、Step、Stop、Record和Eject。,62,二、控件的使用方法:1、属性的设置:2、设备的类型:3、指定文件名:object.filename=文件名4、常用命令:mmcontrol1.Command=“open”,63,在允许用户从MultimediaMCI控件选取按钮之前,应用程序必须先将MCI设备打开,并在MultimediaMCI控件上启用适当的按钮。在VisualBasic中,应将Open命令放到Form_Load事件中。,64,PrivateSubForm_load()SetpropertiesneededbyMCItoopen.MMControl1.Notify=FalseMMControl1.Wait=TrueMMControl1.Shareable=FalseMMControl1.DeviceType=sequencerMMControl1.FileName=d:zyxfive.mid打开MIDI设备。MMControl1.Command=OpenMMControl1.Command=playEndSub,65,第八节焦点与Tab顺序,焦点与Tab顺序是和控件接受用户输入有关的两个概念。一、焦点焦点是对象鼠标或键盘输入的能力。当对象具有焦点时,就可以接受用户的输入。当对象得到焦点时发生GetFocus事件,当对象失去焦点时发生LostFocus事件。,66,可用以下方法将焦点赋给对象:(1)用鼠标选择对象,用Tab键移动,或用快捷键;(2)程序代码中用SetFocus方法可以设置焦点。例如,可以在Form1窗体的Load事件中添加如下代码,使得程序开始时光标(焦点)位于文本框Text3中。PrivateSubForm_Load()Form1.show显示Form1窗体Text3.SetfocusEndSub,67,使用以下方法可以使对象失去焦点:(1)用鼠标单击选择另一个对象,用Tab键移动,或用快捷键:(2)代码中对另一个对象使用SetFocus方法改变焦点。说明:当对象的Enabled和Visible属性都为True时,它才能接受焦点。,68,二、Tab顺序所谓Tab顺序,就是用户按Tab键时,焦点在各个控件之间移动的顺序。在一般情况下,Tab顺序由控件建立时的先后顺序确定。可以通过设置控件的TabIndex属性来改变它的Tab顺序。TabIndex属性值决定了它在Tab顺序中的位置。,69,VB应用程序能够响应多种鼠标事件和键盘事件。窗体、图像控件等都能检测鼠标指针的位置,并可判定其左、右按钮是否按下,还能响应鼠标按钮与Shift、Ctrl、Alt键的各种组合。,第九节鼠标器和键盘,70,鼠标事件是由用户操作鼠标而引发的能被VB中的各种对象识别的事件。Click事件Dblclick事件MouseDown事件:当鼠标任意一个按钮按下MouseUp事件:当鼠标任意一个按钮释放MouseMove事件:当鼠标移动时,一、鼠标事件,71,不同于Click和DblClick事件的是,MouseDown和MouseUp事件能够区分出鼠标的左、右、和中间按钮。也可以为使用SHIFT,CTRL,和ALT等键盘换挡键编写用于鼠标键盘组合操作的代码。需要注意的是:在程序设计时,这些事件发生在什么对象上。,72,PrivateSubForm_MouseDown(buttonAsInteger,shiftAsInteger,xAsSingle,yAsSingle)PrivateSubCommand1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)参数说明:,x,y返回一个指定鼠标指针当前位置的数。,73,button返回一个整数,用来标识哪个鼠标按钮触发了事件。Button的值为:,74,shift返回一个整数,在button参数指定的按钮被按下或者被释放的情况下,该参数反映了SHIFT,CTRL,和ALT键的状态信息。CTRL和ALT键都被按下,则shift的值就是6。,75,例:窗体的MouseDown事件PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Line-(X,Y)Circle(X,Y),50EndSub,76,例:窗体的MouseMove事件PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Line-(X,Y)EndSub,77,例:一个简单的绘图应用程序DimPaintNowAsBoolean声明变量PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)PaintNow=True启动绘图EndSubPrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 食品安全保障计划承诺书(6篇)
- 企业财务预算编制标准流程模板
- 2025年农业行业农业物联网与智能农业发展研究报告及未来发展趋势预测
- 2025年旅游酒店行业度假酒店与旅游休闲研究报告及未来发展趋势预测
- 企业沟通平台搭建工具集
- 2025年农产品行业农产品溯源技术应用案例解析报告
- 企业资源调配协调活动全程指导模板
- 贵州考医院护理三基题库及答案解析
- 华为派遣工岗前考试及答案解析
- 2025年芯片产业行业半导体技术与芯片设计研究报告及未来发展趋势预测
- 《建筑施工模板安全技术规范》JGJ162-2024解析
- 长沙中心医院体检报告
- 品牌设计师发展职业规划
- 《电力机车制动机》 课件 项目一 制动系统认知
- 马术俱乐部计划书
- 《中国语言文字》课件
- 《供应商质量会议》课件
- 《细胞因子`》课件
- 0和它的数字兄弟
- 【岩土工程施工技术实践实验报告2800字】
- 公共管理学第四讲公共池塘资源治理
评论
0/150
提交评论