




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章常用内部控件本章内容概要4.1控件的分类4.2单选按钮和复选框4.3框架4.4列表框和组合框4.5滚动条4.6定时器4.7鼠标和键盘事件4.1控件的分类目前在VB中可以使用的控件很多,大致分为三类:标准控件、ActiveX控件和可插入对象。一、标准控件标准控件又称内部控件,标准控件总是出现在工具箱中,不可由用户添加或删除。4.1控件的分类二、ActiveX控件1、这些控件可以添加到工具箱上,然后像标准控件一样使用。2、ActiveX部件是扩展名为.OCX的独立文件,通常存放在Windows的System目录中。3、用户在使用ActiveX控件之前,需先将它们加载到工具箱中,方法是:
4.1控件的分类
“工程”→“部件”→选定所需的ActiveX控件→单击“确定”按钮。三、可插入对象可插入对象是Windows应用程序的对象。4.2单选按钮和复选框单选按钮(OptionButton)的左边有一个○。复选框(CheckBox)的左边有一个□。一、重要属性1.Caption:设置单选按钮或复选框边上的文本标题2.Alignment:设置标题和按钮显示位置。3.Value:默认属性,表示单选按钮或复选框的状态。①单选按钮
True:单选按钮被选定。
False:单选按钮未被选定,默认设置。
4.2单选按钮和复选框②复选框
0——Unchecked:复选框未被选定,默认设置。
1——Checked:复选框被选定。
2——Grayed:复选框变成灰色,禁止用户选择。4.Style:指定单选按钮或复选框的显示方式,用于改善视觉效果。0—Standard:标准方式。1—Graphical:图形方式。4.2单选按钮和复选框二、事件单选按钮和复选框都能接收Click事件。当用户单击单选按钮或复选框时,它们会自动改变状态。例4.1例4.24.3框架
当需要在同一个窗体中建立几组相互独立的单选按钮时,就需要用框架(Frame)将每一组单选按钮框起来,这样在一个框架内的单选按钮为一组,对它们的操作不会影响框架以外的单选按钮。在窗体上创建框架及其内部控件时,必须先建立框架,然后在其中建立各种控件。
常用属性:1.Caption属性:框架标题2 .Enabled属性:缺省为True;False:标题呈灰色,不允许对框架内的所有对象进行操作。3.Visible属性:
True:框架及其控件可见。
False:框架及其控件被隐含起来。事件:框架可以响应的事件Click、DblClick。一般不需要有关框架的事件过程。
例4.34.3框架4.4列表框和组合框列表框(ListBox)通过显示多个选项,供用户选择。其最主要的特点是只能从其中选择,而不能直接修改其中的内容。4.4列表框和组合框组合框(ComboBox)是组合了文本框和列表框的特性而形成的一种控件。组合框在列表框中列出可供用户选择的选项,当用户选定某项后,该项内容自动装入文本框中。4.4列表框和组合框当列表框中没有所需选项时,除了下拉式列表框(Style属性为2)之外都允许在文本框中用键盘输入,但输入的内容不能自动添加到列表框中。有三种不同风格的组合框:下拉式组合框、简单组合框和下拉式列表框,它们的Style属性分别为0、1和2。4.4列表框和组合框一、列表框和组合框共有的重要属性
1.List属性是一个字符型数组,存放列表框或组合框的选项。List数组的下标是从0开始的,即第一个项目的下标是0。既可以在设计状态设置,也可以在程序中设置或引用。4.4列表框和组合框2.ListIndex属性只能在程序中设置或引用。其值表示程序运行时被选定的选项的序号;如果未选中任何选项,则ListIndex为-1。3.ListCount属性只能在程序中设置或引用。其值表示列表框或组合框中项目的数量。ListCount-1表示最后一项的序号。4.Sorted属性只能在设计状态设置。Sorted属性决定在程序运行期间列表框或组合框的选项是否按字母顺序排列显示。如果Sorted为True,则项目按字母顺序排列显示;如果Sorted为False,则选项按加入的先后顺序排列。4.4列表框和组合框5.Text属性该属性是默认属性,只能在程序中设置或引用。Text属性值是被选定的选项的文本内容。6.Style属性列表框:0:标准样式;1:复选框样式。组合框:0、1或2。组合框的style属性决定组合框类型和行为如下:4.4列表框和组合框4.4列表框和组合框0——下拉式组合框:它显示在屏幕上的仅是文本编辑框和一个下拉箭头按钮。执行时,用户可用键盘直接在文本框区域输入内容,也可用鼠标单击右边的下拉箭头按钮,打开列表框供用户选择,选中内容显示在文本框上。这种组合框允许用户输入不属于列表内的选项。1——简单组合框:它列出所有的选项供用户选择,右边没有下拉箭头按钮,与文本编辑框一起显示在屏幕上。列表框不能被收起和拉下,但可通过单击键盘的向上向下键选择选项,也可以在文本框中用键盘输入列表框中没有的选项。2——下拉式列表框:其功能与下拉式组合框类似,只是不能输入列表框中没有的选项。4.4列表框和组合框二、列表框特有的重要属性1.MultiSelect属性在默认的情况下,在一个列表框中只能选择一项,这是因为MultiSelect属性为0。当Multiselect属性为1或2时允许多项选择。Multiselect为0——None:禁止多项选择。Multiselect为1——Simple:简单多项选择。鼠标单击表示选定或取消选定一个选择项。4.4列表框和组合框Multiselect为2——Extended:扩展多项选择。按住Ctrl键,同时用鼠标单击或按空格键表示选定或取消选定一个选择项;按住Shift键同时单击鼠标,或者按住Shift键并且移动光标键,就可以从前一个选定的项扩展选择到当前选择项,即选定多个连续项。4.4列表框和组合框2.Selected属性该属性只能在程序中设置或引用。Selected属性是一个逻辑数组,其元素对应列表框中相应的项,表示对应的项在程序运行期间是否被选中。
4.4列表框和组合框
三、列表框和组合框的方法列表框和组合框中的选项可以在设计状态通过List属性设置,也可以在程序中用AddItem方法来添加,用RemoveItem或Clear方法删除。4.4列表框和组合框(1)AddItem方法:
功能:把一个选项加入列表框或组合框。格式:<对象>.AddItemItem[,Index]其中,Item:必须是字符串表达式,是将要加入列表框或组合框的选项。Index:决定新增选项在列表框或组合框中的位置,如果Index省略,则新增选项添加在最后。对于第一个选项,Index为0。4.4列表框和组合框(2)RemoveItem方法:功能:从列表框或组合框中删除一个选项应使用RemoveItem方法。格式:<对象>.RemoveltemIndex
其中,Index:被删除项目的位置,对于第一个选项,Index为0。4.4列表框和组合框(3)Clear方法
功能:Clear方法可清除列表框或组合框的所有内容。
格式:<对象>.Clear
四、列表框和组合框的事件列表框能够响应Click和DbClick事件。所有类型的组合框都能响应Click事件,但是只有简单组合框(Style属性为1)才能接收DbClick事件。一般情况下,不需要编写Click事件过程,因为通常是在用户按下命令按钮或发生一个DbClick事件时才需要读取Text属性。4.4列表框和组合框4.5滚动条
滚动条控件(ScrollBar)通常附在窗体上协助观察数据或确定位置,也可用作数据输入工具,用来提供某一范围内的数值供用户选择。分为水平滚动条(HScrollbar)和垂直滚动条(VscrollBar)二种。4.5滚动条常用属性(1)Max最大值属性:表示当滑块处于最大位置时所代表的值(2)Min最小值属性:表示当滑块处于最小位置时所代表的值(3)SmallChange最小变动值属性:表示用户单击滚动条两端箭头时,滑块移动的增量值。4.5滚动条常用属性(4)LargeChange最大变动值属性:表示用户在滚动条的空白处或Slide控件的滑块与两端之间滑动时,滑块移动的增量值。(5)Value值属性:
表示滑块所处位置所代表的值常用事件和方法(1)Scroll事件当滚动框被重新定位,或按水平方向或垂直方向滚动时,Scroll事件发生。拖动滑块时会触发Scroll事件4.5滚动条(2)Change事件滚动条的Change事件在移动滚动框或通过代码改变其Value属性值时发生。单击滚动条两端的箭头或空白处将引发Change事件。
Scroll事件与Change事件的区别在于:当滚动条控件滚动时Scroll事件一直发生,而Change事件只是在滚动结束之后才发生一次。例4.84.5滚动条4.6定时器控件定时器(Timer)控件在设计时是可见的,在运行时隐藏。在后台每隔一定的时间间隔,自动激发一次定时器事件(Timer)而执行相应的程序代码。一、重要属性Interval:表示两个定时器事件之间的时间间隔,其值以毫秒(0.001秒)为单位,介于1~65535之间,所以最大的时间间隔为65535毫秒。4.6定时器控件在程序运行期间,定时器控件并不显示在屏幕上,通常用一个标签来显示时间。当Interval属性值为0时表示屏蔽定时器。如果希望每0.5秒产生一个定时器事件,那么Interval属性值应设为500。这样,每隔500毫秒引发定时器事件,从而执行相应的Timer事件过程。4.6定时器控件二、常用事件和方法定时器控件的主要事件是Timer事件,在每隔Interval指定的时间间隙就执行一次该事件过程。格式:SubTimer1_Timer()【例4.9】在窗体上设计一个数字时钟
【例4.10】一个简单计时器
4.7鼠标和键盘事件一.鼠标事件鼠标事件是由用户操作鼠标而引发的能被VB中的各种对象识别的事件。除了Click和DbClick之外,重要的鼠标事件还有下列三个:MouseDown事件:在按下任意一个鼠标按钮时被触发。MouseUp事件:在释放任意一个鼠标按钮时被触发。4.7鼠标和键盘事件MouseMove事件:在移动鼠标时被触发。在程序设计时,需要特别注意的是,当鼠标指针位于窗体中没有控件的区域时,窗体将识别鼠标事件。当鼠标指针位于某个控件上方时,该控件将识别鼠标事件。与上述三个鼠标事件相对应的鼠标事件过程如下(以Form对象为例):SubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)4.7鼠标和键盘事件其中:(1)Button参数指示用户按下或释放了哪个鼠标按钮,如图4.7.1所示。在Button的二进制位中,b0=l表示用户按下或释放鼠标器的左键;b1=1表示用户操作了鼠标器的右键;b2=1表示鼠标器的中键被操作。例如,当Button=2时,表示用户按下或释放了鼠标的右键。用户也可以使用下面的VB符号常数来检测鼠标的状态。4.7鼠标和键盘事件4.7鼠标和键盘事件例如,Button=2可以改写为:Button=vbRightButton。l—vbLeftButton:用户单击左键触发了鼠标事件;2—vbRightButton:用户单击右键触发了鼠标事件;4—vbMiddleButton:用户单击中键触发了鼠标事件。4.7鼠标和键盘事件(2)Shift是一个整数。该参数包含了Shift、Ctrl和Alt键的状态信息,如图4.7.2所示。在Shift的二进制位中,b0=l表示Shift键被按下;bl=1表示Ctrl键被按下;b2=l表示Alt键被按下。例如,当Shift为2时表示用户仅仅按下了Ctrl键;当Shift为6时表示用户同时按下了Ctrl键和Alt键。4.7鼠标和键盘事件需要注意的是,用户可能同时按下多个键,因此需要与Shift参数进行“与”操作才能检测某个键是否被按下。例如,Shift=2为False时并不表示没有按下Ctrl键,因为按下Ctrl键的同时按下了Shift或Alt键该表达式也为False。检测Ctrl键是否被按下的正确的方法使用ShiftAnd2表达式。Shift、Ctrl、Alt键切换常数如表4.7.1所示。4.7鼠标和键盘事件(3)X、Y这两个值对应于当前鼠标的位置,采用的坐标系是用ScaleMode属性指定的坐标系。【例4.11】简单的鼠标绘图程序。
二.键盘事件1.KeyPress事件当用户敲击键盘时将产生KeyPress事件。KeyPress事件当用户按下和松开一个ASCII字符键时发生。该事件被触发时,被按键的ASCII码将自动传递给事件过程的KeyAscii参数。在程序中,通过访问该参数,即可获知用户按下了哪一个键,并可识别字母的大小写。4.7鼠标和键盘事件格式:SubForm_KeyPress(KeyAsciiAsInteger)SubObject_KeyPress([IndexAsInteger,]KeyAsciiAsInteger)其中:参数KeyAscii是被按下字符键的标准ASCII码值。例如:用户在键盘按“a”键时,KeyAscii参数值为97;用户在键盘按“A”键时,KeyAscii参数值为65。4.7鼠标和键盘事件【说明】(1)此类事件不单用在窗体上,只要具有焦点的对象都可以接收该事件。一个窗体仅在它没有可视和有效的控件或KeyPreview属性被设置为True时才能接收该事件。4.7鼠标和键盘事件(2)并不是按下键盘上的任意一个键都会引发KeyPress事件,KeyPress事件只对会产生ASCII码的按键有反应,包括数字、大小写的字母、Enter、Backspace、Esc、Tab等键。对于例如方向键这样的不会产生ASCII码的按键,KeyPress事件不会发生。4.7鼠标和键盘事件当控制焦点在某个对象上,同时用户按下键盘上的任一键,便会引发该对象的KeyDown事件,释放按键便触发KeyUp事件。4.7鼠标和键盘事件2.KeyUp和KeyDown的事件过程keyup和keydown的事件过程形式如下:SubForm_KeyUp(KeyCodeAsInteger,ShiftAsInteger)SubObject_KeyUp([IndexAsInteger,]KeyCodeAsInteger,ShiftAsInteger)4.7鼠标和键盘事件SubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)SubObject_KeyDown([IndexAsInteger,]KeyCodeAsInteger,ShiftAsInteger)4.7鼠标和键盘事件其中:(1)KeyCode参数值是用户所操作的那个键的扫描代码,它告诉事件过程用户所操作的物理键。例如,不管键盘处于小写状态还是大小状态,用户在键盘按“A”键,KeyCode参数值相同。对于有上档字符和下档字符的键,其KeyCode也是相同的,都是下档字符的ASCII码。表4.7.2列出部分字符的KeyCode和KeyAscii码以供区别。4.7鼠标和键盘事件(2)Shift参数:是一个整数,表示的含义与鼠标事件中的Shift参数相同。(3)Index参数:是一个整数,用来唯一的指定一个控件数组中的控件。4.7鼠标和键盘事件在一个程序中,如果同时使用了键盘的KeyPress、KeyDown、KeyUp三个事件,那么其激活的先后顺序为KeyDown、KeyPress、KeyUp事件。【例4.12】小鸡抓虫程序。用键盘上行、下行和左右移动键移动小鸡图片,当小鸡遇到小虫时显示文字。
4.7鼠标和键盘事件“拖放(DragandDrop)”技术
即用鼠标将对象从一个地方拖到另一个地方再放下。可以把整个拖放过程分解成两个操作:一个是发生在源对象的“拖”操作;另一个是发生在目标对象上的“放”操作,即把源对象“放”在目标对象上。在拖动的过程中,被拖动的对象变为灰色。4.7鼠标和键盘事件一、属性、事件和方法除了菜单、计时器和通用对话框外,其它控件均可在程序运行期间被拖放。1.属性:(1)DragMode属性用来设置自动或人工(手动)拖放模式。默认值为0(人工方式)。为了能对一个控件执行自动拖放操作,须把它的DragMode属性设置为1。可在属性窗口中设置,也可在程序代码中设置。4.7鼠标和键盘事件4.7鼠标和键盘事件例如:Picture1.DragMode=1(2)DragIcon属性拖动过程中,并不是对象本身在移动,而是移动代表的图标。即一旦要拖动一个控件,这个控件就变成一个图标,等放下后再恢复成原来的控件。DragIcon属性含有一个图片或图标的文件名,在拖动时作为控件的图标。4.7鼠标和键盘事件例如:Picture
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市更新中的历史文化街区保护与开发中的社区文化保护与传承研究报告
- 2025年职业教育校企合作人才培养模式改革与案例实践探索报告
- 2025年全球石油市场供需预测:价格波动与可持续发展研究报告
- 人才奖励资金管理办法
- 临时航路使用管理办法
- 互联网医疗发展2025年在线职业技能提升课程在医疗领域的可行性分析报告
- 企业违规违纪管理办法
- 企业宿舍达标管理办法
- 2025年铀矿资源分布对核能产业战略布局的影响研究报告
- 人才举荐奖励管理办法
- 古城墙修复专项施工方案
- 钢筋混凝土全框架结构施工组织设计
- 工程监理大纲监理方案服务方案
- 蛋白组学二维电泳
- GB/T 3372-2010拖拉机和农业、林业机械用轮辋系列
- GB/T 2007.1-1987散装矿产品取样、制样通则手工取样方法
- 一例糖尿病合并脑梗死-护理查房概要
- 2023年宝应县(中小学、幼儿园)教师招聘笔试题库及答案解析
- 公司制成检验记录表
- 全集举一反三课件奥数五年级(数学)
- 钳工实操评分表(凹凸配合)
评论
0/150
提交评论