版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021/4/21Visual Basic程序设计教程程序设计教程内蒙古科技大学实践训练中心内蒙古科技大学实践训练中心第十一章第十一章 键盘和鼠标事件过程键盘和鼠标事件过程2021/4/22键盘事件键盘事件: KeyPress KeyPress 事件:用户按下并释放一个能产生一个能产生事件:用户按下并释放一个能产生一个能产生ASCIIASCII码的键时码的键时 被触发;被触发; KeyUp KeyUp 事件:用户释放任一键时被触发;事件:用户释放任一键时被触发; KeyDown KeyDown 事件:用户按下任一个键时被触发;事件:用户按下任一个键时被触发;2021/4/23引发引发KeyPr
2、essKeyPress事件的按键:事件的按键: 数字、大小写字母、数字、大小写字母、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;2021/4/24
3、 当控制焦点在某个对象上时,按下键盘上的任一键,便会引发该对象的KeyDownKeyDown事件,释放按键便会触发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_KeyU
4、p(KeyCode as integer,Shift As integer)Private Sub Text1_KeyUp(KeyCode as integer,Shift As integer) End Sub End Sub 参数:参数: KeyCodeKeyCode:为用户所操作的键的扫描码;即键的物理位置相同则KeyCodeKeyCode参数值相同(”A“和”a“;5和等);但大键盘的数字和小键盘的数字的KeyCodeKeyCode不一样;2021/4/25 参数:参数: Shift Shift:根据是否同时按下ShiftShift、CtrlCtrl和AltAlt键返回的一个整数; 整
5、数值符号常量说明1vbShiftMask按下Shift键2vbCtrlMask按下Ctrl键4vbAltMask按下Alt键0没有按下Shift、Ctrl、Alt键7同时按下Shift、Ctrl、Alt键 键盘三个事件的触发顺序:KeyDownKeyDown、KeyPressKeyPress、KeyUpKeyUp; 一般情况下,控件可以触发这三个事件; 但窗体必须将“KeyPreiewKeyPreiew”属性值设为TrueTrue;则首先窗体的KeyPressKeyPress、 KeyUp KeyUp和KeyDownKeyDown;2021/4/26 例例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 Sub2021/
7、4/27 例例11-211-2设计一个应用程序。在窗体上建立一个文本框,其属性值均为默认值,设计一个应用程序。在窗体上建立一个文本框,其属性值均为默认值,并将窗体的并将窗体的KeyPreviewKeyPreview属性值设为属性值设为TrueTrue。 解题思路解题思路:若设置窗体的KeyPreviewKeyPreview属性值为TrueTrue,则先执行窗体的KeyPressKeyPress事件,而后执行文本框的KeyPressKeyPress事件; Private Sub Form_KeyPress(KeyAscii As Integer) KeyAscii = KeyAscii + 1E
8、nd SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) KeyAscii = KeyAscii + 1End Sub2021/4/28 例例11-311-3设计一个应用程序。当按下设计一个应用程序。当按下AltAltF5F5组合键时终止程序运行组合键时终止程序运行。 说明:先将窗体的KeyPreiew设为True; F5的KeyCde值为vbKeyF5; Alt键被按下的常数为vbAltMask Private Sub Form_KeyDown(KeyCode as integer,Shift as integer)Private Sub F
9、orm_KeyDown(KeyCode as integer,Shift as integer) If keycode=vbkeyF5 and Shift=vbAltMask then If keycode=vbkeyF5 and Shift=vbAltMask then end end end if end if2021/4/29 MouseDownMouseDown事件;事件; MouseUpMouseUp事件;事件; MouseMoveMouseMove事件;事件;以窗体以窗体FormForm为例:为例: Private Sub Form_MouseDown(Button as inte
10、ger, Shift as Integer,Private Sub Form_MouseDown(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_MouseUp(Button as integer, Shift as Integer,Private Sub Form_MouseUp(Button as integer, Shift as Integer, x as single,y as single)
11、x as single,y as single) end sub end sub Private Sub Form_MouseMove(Button as integer, 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 sub2021/4/210 参数:参数: Button Button参数参数:参数值符号常量说明1vbLeftButton按下鼠标左键2vbRightButton按下鼠标右键4vbMiddleButton按下鼠标中键 ShiftShift:同键盘的ShiftShift参数; x x、y y:对应于鼠标指针的位置;鼠标事件出发顺序鼠标事件出发顺序: MouseDownMouseDown、ClickClick、MouseUpMouseUp 2021/4/211例例11-411-4利用鼠标画圆利用鼠标画圆。 方法:利用MuseDownMuseDown事件记录圆心的坐标,用MouseUpMouseUp事件记录半径端点的坐标,计算半径,再利用CircleCircle方法在窗体上画圆。例例11-511-5显示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026浙江宁波前湾控股集团有限公司第1批次人员招聘笔试备考试题及答案解析
- 2026年陕西⼈⺠艺术剧院有限公司招聘(2人)笔试备考题库及答案解析
- 2026年安阳学院单招综合素质笔试备考试题含详细答案解析
- 2026贵州筑春酒业有限责任公司招聘销售人员笔试备考题库及答案解析
- 2026年江西科技职业学院单招职业技能考试模拟试题含详细答案解析
- 2026山东日照航海工程职业学院招聘52人笔试备考题库及答案解析
- 2026年湖北生态工程职业技术学院单招职业技能考试备考试题含详细答案解析
- 2026丽水松阳华数广电网络有限公司见习生招聘5人笔试备考题库及答案解析
- 2026年青岛港湾职业技术学院高职单招职业适应性测试备考试题及答案详细解析
- 2026年青岛市卫生健康委员会直属事业单位公开招聘卫生类岗位工作人员(383名)笔试备考试题及答案解析
- 《老年人照料设施建筑装饰装修设计规程》上网征求意见稿
- 2026年及未来5年市场数据中国航空复合材料市场运行态势及行业发展前景预测报告
- 人教版七年级数学寒假作业(每日一练)
- 柴油机启动课件
- 动物医学毕业论文
- 2025年全国高校辅导员素质能力大赛基础知识测试卷及答案
- 2026年沈阳职业技术学院单招职业适应性测试必刷测试卷必考题
- 《机车运用与维护》第三章 铁路行车信号
- (2025年标准)预存消费协议书
- 养老院入住合同协议书
- 耐磨钢的应用现状及行业发展分析
评论
0/150
提交评论