版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第17章键盘与鼠标事件
17.1键盘事件
17.2鼠标事件
17.3鼠标光标的形状
17.4拖放上一页下一页目录结束本节
17.1键盘事件
在VB中,对象识别的键盘事件有下列三种:
⑴KeyPress事件:按下并且释放一个会产生ASCII码的键时被触发。
⑵KeyUp事件:按下键盘上任意一个键时被触发。
⑶
KeyDown事件:释放键盘上任意一个键时触发。
1.KeyPress事件
KeyPress事件只对会产生ASCII码的按键有反应,包括数字、大小写的字母、Enter、Esc、Tab
Backspace等。严格地说,当按下某个键时,所触发的是拥有输入焦点(Focus)的那个控件的KeyPress事件。若窗体上没有活动的或可见的控件,则输入焦点位于窗体上。上一页下一页目录结束本节
PrivateSubForm_KeyPress(KeyAsciiAsInteger)……’窗体的事件过程
EndSub
PrivateSubobject_KeyPress([IndexAsInteger,]
KeyAsciiAsInteger)……'窗体上控件的事件过程
EndSub
【格式】
【说明】KeyPress事件带有一个参数,这个参数有两种形式。第一种形式是IndexAsInteger,用于控件数组;第二种形式是KeyAsciiAsInteger,用于单个控件。
为了记录用户的每次击键,先把窗体的KeyPreview设置为True,再编写如下的程序(SaveAll被声明为窗体级字符串变量):
上一页下一页目录结束本节
PrivateSubForm_KeyPress(KeyAsciiAsInteger)
SaveAll=SaveAll+Chr$(KeyAscii)EndSub
注意:在默认情况下,控件的键盘事件优先于窗体的键盘事件。如果希望窗体先接收键盘事件,则必须把窗体的KeyPreview属性设置为True。
2.KeyDown和KeyUp事件
当控制焦点置于某个对象上,同时用户按下键盘中的任一键,便会对相应对象引发KeyDown事件,释放按键便引发相应对象的KeyUp事件。KeyDown和KeyUp事件返回的是被按下或释放的键盘扫描和组合键的状态,即事件返回的是“键”。
KeyDown和KeyUp事件的过程形式如下:上一页下一页目录结束本节
⑴PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)……EndSub
或
PrivateSubForm_KeyUp(KeyCodeAsInteger,ShiftAsInteger)……EndSub
⑵PrivateSubobject_KeyDown([IndexAsInteger,]KeyCodeAsInteger,ShiftAsInteger)……EndSub上一页下一页目录结束本节或
PrivateSubobject_KeyUp([IndexAsInteger,]
KeyCodeAsInteger,ShiftAsInteger)……EndSub
KeyDown和KeyUp事件都有两个参数,即KeyCode和Shift,两个参数的含义如下:
⑴KeyCode
它是用户所操作的那个键的扫描代码,告诉事件过程用户所操作的物理键。也就是说,大写字母与小写字母使用同一个键,它们的KeyCode相同(使用大写字母的ASCII码)。但大键盘上的数字键与数字键盘上相同的数字键的KeyCode是不一样的。对于有上档字符和下档字符的键,它们的KeyCode相同。使用KeyCode为下档字符的ASCII码。上一页下一页目录结束本节
⑵Shift
转换键:它指的是3个转换键的状态,包括Shift、Ctrl和Alt,这3个键分别以二进制形式表示,Shift参数取值,见下表。十进制数
二进制数
作用0000没有按下转换键1001按下一个Shift键2010按下一个Ctrl键3011按下Ctrl+Shift键4100按下Alt键5101按下Alt+Shift键6110按下Alt+Ctrl键7111按下Alt+Ctrl+Shift键上一页下一页目录结束本节17.2鼠标事件
除了常用的单击(Click)和双击(DblClick)事件。鼠标事件还有下列三个事件:
⑴MouseDown事件:当鼠标的任意一个按钮被按下时被触发。
⑵MouseUp事件:当鼠标的任意一个按钮被释放时被触发。
⑶MouseMove事件:当鼠标被移动时被触发。鼠标事件过程如下(以Form对象为例):⑴MouseDown(压下鼠标)事件过程:SubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)……EndSub上一页下一页目录结束本节
⑵MouseUp(松开鼠标)事件过程SubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)……EndSub
⑶MouseMove(移动鼠标)事件过程
SubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)……EndSub这三个鼠标事件过程具有相同的参数,含义如下:
⑴Button:该参数是一个整数,包含被用户按下或释放的鼠标按钮的值。可以取3个值,1、2、4。分别表示按下鼠标左键、右键、中间键。上一页下一页目录结束本节⑵Shift:表示Shift、Ctrl和Alt键的状态。
⑶x、y:这两个值对应于当前鼠标的位置,采用ScaleMode属性指定的位置。
1.鼠标位置
鼠标位置由参数x、y确定。这里的x、y随鼠标光标在窗体上的移动而变化。(x,y)通常指接收鼠标事件的窗体或控件的坐标。
2.鼠标键
鼠标键状态由参数Button来设定,该参数是一个整数(16位)。在设置按键状态时,实际上只使用了低3位。当按下某个键时,相应的位被置为1,否则为0。上一页下一页目录结束本节【说明】①对于MouseDown和MouseUp事件来说,只能用鼠标的按键参数判断是否按下或松开某一个键,不能检查两个键被同时按下或松开,因此Button参数的取值只有3种,即001(十进制1)、010(十进制2)和100(十进制4)。
②对于MouseMove事件,可以通过Button参数判断按下一个或同时按下两或三个键。
③在判断是否按下多个键时,要注意避免二义性。
④为了提高可读性,可以把3个键定义为符号常量。
3.转换参数(Shift)和按钮参数Button一样,转换参数Shift也是一个整数值,并用其低3位表示Shift、Ctrl和Alt键的状态,某键被按下时一个二进制位被设置。上一页下一页目录结束本节
17.3鼠标光标的形状
2.设置鼠标光标形状
1.MousePointer属性
设置鼠标光标的形状。该属性可以在属性窗口中设置,也可以在程序代码中设置。
MousePointer的属性是一个整数,可以取0~15。
⑴在程序代码中设置MousePointer属性
【格式】对象.MousePointer=设置值
【说明】这里的“对象”可以是复选框、组合框、命令按钮、目录列表框等。
⑵在属性窗口中设置MousePointer属性。上一页下一页目录结束本节
⑶自定义鼠标光标如果把MousePointer属性设置为99,则可通过MouseIcon属性定义自己的鼠标光标。同样有两种方法来设置:在属性窗口中定义和在程序代码设置(用LoadPicture函数)。
⑷鼠标光标形状的使用
注意:鼠标光标的形状在屏幕的任何位置都不会改变。如果设置"Screen.MousePointer=0",则可击活窗体或控件的属性所设定的局部鼠标形状。上一页下一页目录结束本节17.4拖放
与拖放有关的属性、事件和方法:
⑴属性
①DragMode属性该属性用来设置自动或人工(手动)拖放模式。在默认情况下,该属性值为0(人工方式)。它的DragMode属性设置为1后,可以对一个控件执行自动拖放操作,但该对象不再接收Click事件和MouseDown事件。该属性可以在属性窗口中设置,也可以在程序代码中设置。
②DragIcon属性
DragIcon属性含有一个图片或图标的文件名,在拖动时作为控件的图标。上一页下一页目录结束本节
⑵事件
①DragDrop事件当把控件(图标)拖到目标之后,如果松开鼠标键,则产生一个DragDrop事件。【格式】
Sub对象名_DragDrop(SourceAsControl,XAsSingle,YAsSingle)……EndSub
【说明】
该事件过程含有3个参数。其中Source是一个对象变量,其类型为Control,该参数含有被拖动对象的属性。参数X、Y是松开鼠标键放下对象时鼠标光标的位置。上一页下一页目录结束本节
②DragOver事件
DragOver事件用于图标的移动。当拖动对象越过一个控件时,产生DragOver事件。【格式】
Sub对象名_DragOver(SourceAsControl,XAsSingle,YAsSingle,StateAsInteger)……EndSub
【说明】该事件过程有4个参数,其中Source参数的含义同前,X、Y是拖动时鼠标光标的坐标位置。
0—鼠标光标正进入目标对象的区域;
1—鼠标光标正退出目标对象的区域;
2—鼠标光标正位于目标对象的区域之内。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校教师踢足球奖惩制度
- 关于印发医院奖惩制度
- 国企公文写作奖惩制度
- 清华大学研究生奖惩制度
- 数学小组竞赛奖惩制度
- 学校怎样实施奖惩制度
- 建筑行业施工现场安全培训规范(标准版)
- 2026年鹤壁能源化工职业学院单招职业技能测试题库含答案详解
- 媒体广告创意设计与制作指南(标准版)
- 2026年陕西青年职业学院单招职业适应性测试题库附答案详解(黄金题型)
- 北京市朝阳区2024-2025学年高三下学期一模试题化学试卷(含答案)
- 2025年江苏财经职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 2025年江苏农林职业技术学院高职单招(数学)历年真题考点含答案解析
- 企业事故隐患内部报告奖励制度
- 大连重工:中企华评报字(2024)第5436号资产评估报告
- 【人教版化学】选择性必修2 知识点默写小纸条(空白默写版)
- 档案馆数字档案馆建设方案
- TB-10414-2018-铁路路基工程施工质量验收标准
- JBT 14449-2024 起重机械焊接工艺评定(正式版)
- 农村土地转让协议正规版范本合集
- 中建五局有限空间作业方案编制指南(2022版)
评论
0/150
提交评论