论文部分内容阅读
[摘要]主要比较VB程序设计中鼠标和键盘使用的优缺点问题,并对键盘及快捷键的操作进行分析和设计,对于初学程序设计的读者具有非常重要的参考和借鉴意义。
[关键词]窗体 事件 Ascii 代码 快捷键等等。
中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720042-01
在微软的各类应用程序中,不无例外地包含菜单、工具栏、各种按钮(如命令按钮、单选、复选、列表框等)。使用鼠标实现上述各种操作当然是最直观、最快捷和最方便的,其实这也可以说这是微软应用程序当初最成功的要素之一。
正因为有了鼠标才使我们从黑白的字符走向多彩的界面;才能从复杂多变的操作走简便、风格一致的应用。
鼠标的操作不外乎有移动、单击(左击)、右击、双击甚至三击等,其对应的事件有Mouse_Move(Click、Dbclick、Rightclick)。在具体的编程设计过程中,设计者将有关要完成或实现一定功能的代码放于上述不同对象的不同事件中,程序运行时,用户在相应的控件上执行相关的鼠标操作,计算机便激发执行相关的代码,从而实现相关的功能控制或获得特定的功能或特定的运算结果,这就是所谓的面向对象程序设计的方法。
但是,并不能说有了鼠标后,键盘就显得不那么重要了,实际上鼠标和键盘两者都是计算机不可或缺的两种重要输入设备,两者不可以完全相互代替,虽然现在新技术的发展日新月异(如手写板、声音认识等 ),但它们都有一定的误码率,而且要经过专门的培训,有时使用起来也不是很方便。一般来说,鼠标比较方便用于菜单、命令按鈕或选择性(如单选、复选等)格式设置等的操作,但是有大量文字或数据需要录入时则就应该使用键盘操作较为方便。
就算是可以用鼠标操作的界面,但是用键盘可能会更专业、更快捷,这种情况主要出现在频繁、快捷操作的场合(如银行的存取款业务、会计的核算等),本文就这一问题进行研究和探讨,不足之处请各位专家不吝指导。
一、键盘的KeyPress事件
这个事件一般用于测试用户按了哪个键盘,并执行相关的操作控制。与此相应的还有两个更细微的KeyDown和KeyUp(即键盘按下和弹起时分别响应)事件。判断的依据是字符的Ascii值,事实上,每个键盘在计算机上都有一个唯一编码的Ascii值,根据不同的Ascii值程序就可以测试用户按了哪个键盘,以便后续程序作相应的控制。
如字符“A”的Ascii值为65,字符“a”的Ascii值为97,控制键Esc的Ascii值为27,空格键的Ascii值为32,回车键的Ascii值为13等等。
(一)例子
在图一的登录界面中,用户希望在文本框Text1中输入完用户账号后按“回车”键跳至第二个文本框Text2,当用户在第二文本框输入完密码后按“回车”键跳至“确定”按钮。
为了实现这一功能,就要在两文本框的KeyPress事件上编写如下代码:
Private Sub Text1_KeyPress(KeyAscii As Integer)
IfKeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
(二)上述代码的意思
当用户在文本框Tetx1中输入完成所需要的内容后,直接按回车键,则将光标(的焦点)置于第二个文本框上,等待用户的输入。
同样,在Text2的KeyPress事件上编写如下代码:
Private Sub Text2_KeyPress(KeyAscii As Integer)
IfKeyAscii = 13 Then
Command1.SetFocus
End If
End Sub
(三)上述代码的意思
当用户在文本框Tetx2中输入完成所需要的内容后,直接按回车键,则将光标(的焦点)置于“确定”这一命令按钮上。
(四)总结
在这个例子中,用户通过按“回车键”依次向下跳转,操作速度显然要比鼠标要快,因为鼠标操作首先要移动,然后定位并单击,操作起来不方便,也不够专业。
二、快捷键的设置和使用
快捷键的使用更频繁也比鼠标更方便和快捷,比如:在一些操作中用Esc直接退出本应用,Windows的Alt+F4关闭应用程序窗口,Ctrl+S实现当前编辑的文件存盘,Ctrl+C强行中断程序的运行等。这些功能都是要通过编写程序代码才能够实现的。
(一)例子
在图二的操作界面中,要求编程实现:
1.按Ctrl+S执行“确定”功能。
假定其名称为Command1
2.按Esc键执行“退出”功能。
假定其名称为Command2
(二)设计分析
类似这种快捷键的操作并不是在哪个控件或对象上执行该操作,而是在任何焦点位置或操作过程中,执行快捷键的相关命令便立即激发其代码或操作功能。为了实现上述功能,需要按如下步骤进行:
1.首先将窗体的KeyPreview属性设置为True(真值),这样做的目的是让窗体控件激发之前使窗体先接收其键盘事件,这样才能够实现快捷键的控制目标。
2.必须掌握一些常见控制键或功能键的Ascii值,如:
Ctrlr的Ascii值为2,Alt的Ascii值为4,Shift的Ascii值为1,Esc的
Ascii值为27。功能键F1~F12 的Ascii值依次为:112~123等等。
3.在窗体的KeyDown事件上编写程序代码,实现所需要的控制,如下所示:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
IfKeyCode = 27 Then Command2_Click
IfShift = 2AndKeyCode = vbKeyS Then Command1_Click
End Sub
(三)代码说明
第一句是:当用户按Esc键,则转向执行Command2(退出)指定的代码。
第二句是:当用户按Ctrl+S组合键,则转向执行Command2(退出)指定的代码,这里S键的Ascii码值由计算机通过关键字vbKeyS自动求出,Shift是控制关键字。
参考文献:
[1]VB实用教程,郑阿奇编著,电子工业出版.
[2]VB6.0软件开发,钟一兵主编,华东师大出版.
[3]VB语言程序设计基础,赵晨阳等编著,电子工业出版.
[关键词]窗体 事件 Ascii 代码 快捷键等等。
中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720042-01
在微软的各类应用程序中,不无例外地包含菜单、工具栏、各种按钮(如命令按钮、单选、复选、列表框等)。使用鼠标实现上述各种操作当然是最直观、最快捷和最方便的,其实这也可以说这是微软应用程序当初最成功的要素之一。
正因为有了鼠标才使我们从黑白的字符走向多彩的界面;才能从复杂多变的操作走简便、风格一致的应用。
鼠标的操作不外乎有移动、单击(左击)、右击、双击甚至三击等,其对应的事件有Mouse_Move(Click、Dbclick、Rightclick)。在具体的编程设计过程中,设计者将有关要完成或实现一定功能的代码放于上述不同对象的不同事件中,程序运行时,用户在相应的控件上执行相关的鼠标操作,计算机便激发执行相关的代码,从而实现相关的功能控制或获得特定的功能或特定的运算结果,这就是所谓的面向对象程序设计的方法。
但是,并不能说有了鼠标后,键盘就显得不那么重要了,实际上鼠标和键盘两者都是计算机不可或缺的两种重要输入设备,两者不可以完全相互代替,虽然现在新技术的发展日新月异(如手写板、声音认识等 ),但它们都有一定的误码率,而且要经过专门的培训,有时使用起来也不是很方便。一般来说,鼠标比较方便用于菜单、命令按鈕或选择性(如单选、复选等)格式设置等的操作,但是有大量文字或数据需要录入时则就应该使用键盘操作较为方便。
就算是可以用鼠标操作的界面,但是用键盘可能会更专业、更快捷,这种情况主要出现在频繁、快捷操作的场合(如银行的存取款业务、会计的核算等),本文就这一问题进行研究和探讨,不足之处请各位专家不吝指导。
一、键盘的KeyPress事件
这个事件一般用于测试用户按了哪个键盘,并执行相关的操作控制。与此相应的还有两个更细微的KeyDown和KeyUp(即键盘按下和弹起时分别响应)事件。判断的依据是字符的Ascii值,事实上,每个键盘在计算机上都有一个唯一编码的Ascii值,根据不同的Ascii值程序就可以测试用户按了哪个键盘,以便后续程序作相应的控制。
如字符“A”的Ascii值为65,字符“a”的Ascii值为97,控制键Esc的Ascii值为27,空格键的Ascii值为32,回车键的Ascii值为13等等。
(一)例子
在图一的登录界面中,用户希望在文本框Text1中输入完用户账号后按“回车”键跳至第二个文本框Text2,当用户在第二文本框输入完密码后按“回车”键跳至“确定”按钮。
为了实现这一功能,就要在两文本框的KeyPress事件上编写如下代码:
Private Sub Text1_KeyPress(KeyAscii As Integer)
IfKeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
(二)上述代码的意思
当用户在文本框Tetx1中输入完成所需要的内容后,直接按回车键,则将光标(的焦点)置于第二个文本框上,等待用户的输入。
同样,在Text2的KeyPress事件上编写如下代码:
Private Sub Text2_KeyPress(KeyAscii As Integer)
IfKeyAscii = 13 Then
Command1.SetFocus
End If
End Sub
(三)上述代码的意思
当用户在文本框Tetx2中输入完成所需要的内容后,直接按回车键,则将光标(的焦点)置于“确定”这一命令按钮上。
(四)总结
在这个例子中,用户通过按“回车键”依次向下跳转,操作速度显然要比鼠标要快,因为鼠标操作首先要移动,然后定位并单击,操作起来不方便,也不够专业。
二、快捷键的设置和使用
快捷键的使用更频繁也比鼠标更方便和快捷,比如:在一些操作中用Esc直接退出本应用,Windows的Alt+F4关闭应用程序窗口,Ctrl+S实现当前编辑的文件存盘,Ctrl+C强行中断程序的运行等。这些功能都是要通过编写程序代码才能够实现的。
(一)例子
在图二的操作界面中,要求编程实现:
1.按Ctrl+S执行“确定”功能。
假定其名称为Command1
2.按Esc键执行“退出”功能。
假定其名称为Command2
(二)设计分析
类似这种快捷键的操作并不是在哪个控件或对象上执行该操作,而是在任何焦点位置或操作过程中,执行快捷键的相关命令便立即激发其代码或操作功能。为了实现上述功能,需要按如下步骤进行:
1.首先将窗体的KeyPreview属性设置为True(真值),这样做的目的是让窗体控件激发之前使窗体先接收其键盘事件,这样才能够实现快捷键的控制目标。
2.必须掌握一些常见控制键或功能键的Ascii值,如:
Ctrlr的Ascii值为2,Alt的Ascii值为4,Shift的Ascii值为1,Esc的
Ascii值为27。功能键F1~F12 的Ascii值依次为:112~123等等。
3.在窗体的KeyDown事件上编写程序代码,实现所需要的控制,如下所示:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
IfKeyCode = 27 Then Command2_Click
IfShift = 2AndKeyCode = vbKeyS Then Command1_Click
End Sub
(三)代码说明
第一句是:当用户按Esc键,则转向执行Command2(退出)指定的代码。
第二句是:当用户按Ctrl+S组合键,则转向执行Command2(退出)指定的代码,这里S键的Ascii码值由计算机通过关键字vbKeyS自动求出,Shift是控制关键字。
参考文献:
[1]VB实用教程,郑阿奇编著,电子工业出版.
[2]VB6.0软件开发,钟一兵主编,华东师大出版.
[3]VB语言程序设计基础,赵晨阳等编著,电子工业出版.