VB程序设计第十一章键盘和鼠标事件过程_第1页
VB程序设计第十一章键盘和鼠标事件过程_第2页
VB程序设计第十一章键盘和鼠标事件过程_第3页
VB程序设计第十一章键盘和鼠标事件过程_第4页
VB程序设计第十一章键盘和鼠标事件过程_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、visual basic程序设计教程程序设计教程内蒙古科技大学实践训练中心内蒙古科技大学实践训练中心第十一章第十一章 键盘和鼠标事件过程键盘和鼠标事件过程键盘事件键盘事件: keypress keypress 事件:用户按下并释放一个能产生一个能产生事件:用户按下并释放一个能产生一个能产生asciiascii码的键时码的键时 被触发;被触发; keyup keyup 事件:用户释放任一键时被触发;事件:用户释放任一键时被触发; keydown keydown 事件:用户按下任一个键时被触发;事件:用户按下任一个键时被触发;引发引发keypresskeypress事件的按键:事件的按键: 数字、

2、大小写字母、数字、大小写字母、enterenter、backspacebackspace、escesc、tabtab等键。 如文本框text1text1的keypresskeypress事件如下: private sub text1_keypress(keyascii as integer)private sub text1_keypress(keyascii as integer) end sub end sub “a” “a”的的asciiascii值为值为9797;“a”a”的的asciiascii值为值为6565; 当控制焦点在某个对象上时,按下键盘上的任一键,便会引发该对象的keyd

3、ownkeydown事件,释放按键便会触发keyupkeyup事件。 如文本框text1text1的keydownkeydown事件过程: private sub text1_keydown(keycode as integer,shift as integer)private sub text1_keydown(keycode as integer,shift as integer) end sub end sub 如文本框text1text1的keyupkeyup事件过程: private sub text1_keyup(keycode as integer,shift as intege

4、r)private sub text1_keyup(keycode as integer,shift as integer) end sub end sub 参数:参数: keycodekeycode:为用户所操作的键的扫描码;即键的物理位置相同则keycodekeycode参数值相同(”a“和”a“;5和等);但大键盘的数字和小键盘的数字的keycodekeycode不一样; 参数:参数: shiftshift:根据是否同时按下shiftshift、ctrlctrl和altalt键返回的一个整数; 整数值符号常量说明1vbshiftmask按下shift键2vbctrlmask按下ctrl键

5、4vbaltmask按下alt键0没有按下shift、ctrl、alt键7同时按下shift、ctrl、alt键 键盘三个事件的触发顺序:keydownkeydown、keypresskeypress、keyupkeyup; 一般情况下,控件可以触发这三个事件; 但窗体必须将“keypreiewkeypreiew”属性值设为truetrue;则首先窗体的keypresskeypress、 keyupkeyup和keydownkeydown; 例例11-111-1设计一个应用程序。在窗体上建立一个文本框和一个标签,当从键盘设计一个应用程序。在窗体上建立一个文本框和一个标签,当从键盘向文本框英文字

6、符时,将其转换成大写字母显示在标签中向文本框英文字符时,将其转换成大写字母显示在标签中。 解题思路解题思路:在text1的keypress事件中,将键盘的asc码转化为相应的字符, 再将其转化为大写。private sub text1_keypress(keyascii as integer) dim char as string char = ucase(chr(keyascii) label1.caption = label1.caption & charend sub 例例11-211-2设计一个应用程序。在窗体上建立一个文本框,其属性值均为默认值,设计一个应用程序。在窗体上建立一个文本

7、框,其属性值均为默认值,并将窗体的并将窗体的keypreviewkeypreview属性值设为属性值设为truetrue。 解题思路解题思路:若设置窗体的keypreviewkeypreview属性值为truetrue,则先执行窗体的keypresskeypress事件,而后执行文本框的keypresskeypress事件; private sub form_keypress(keyascii as integer) keyascii = keyascii + 1end subprivate sub text1_keypress(keyascii as integer) keyascii =

8、keyascii + 1end sub 例例11-311-3设计一个应用程序。当按下设计一个应用程序。当按下altaltf5f5组合键时终止程序运行组合键时终止程序运行。 说明:先将窗体的keypreiew设为true; f5的keycde值为vbkeyf5; alt键被按下的常数为vbaltmask private sub form_keydown(keycode as integer,shift as integer)private sub form_keydown(keycode as integer,shift as integer) if keycode=vbkeyf5 and sh

9、ift=vbaltmask then if keycode=vbkeyf5 and shift=vbaltmask then end end end if end if mousedown mousedown事件;事件; mouseupmouseup事件;事件; mousemovemousemove事件;事件;以窗体以窗体formform为例:为例: private sub form_mousedown(button as integer, shift as integer,private sub form_mousedown(button as integer, shift as integ

10、er, x as single,y as single) x as single,y as single) end sub end sub private sub form_mouseup(button as integer, shift as integer,private sub form_mouseup(button as integer, shift as integer, x as single,y as single) x as single,y as single) end sub end sub private sub form_mousemove(button as inte

11、ger, shift as integer,private sub form_mousemove(button as integer, shift as integer, x as single,y as single) x as single,y as single) end sub end sub 参数:参数: buttonbutton参数参数:参数值符号常量说明1vbleftbutton按下鼠标左键2vbrightbutton按下鼠标右键4vbmiddlebutton按下鼠标中键 shiftshift:同键盘的shiftshift参数; x x、y y:对应于鼠标指针的位置;鼠标事件出发顺序鼠标事件出发顺序: mousedownmousedown、clickclick、mouseupmouseup 例例11-411-4利用鼠标画圆

温馨提示

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

评论

0/150

提交评论