问题
单项选择题
在属性窗口中把窗体的KeyPreview属性设置为True,然后编写如下两个事件过程:
Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
Print Chr(KeyAscii)
End Sub
在一般情况下(即不按住Shift键和锁定大写),运行程序,如果按“A”键,则程序输出的是( )。
A.A
a
B.a
A
C.A
A
D.a
a
答案
参考答案:A
解析: 本题考查键盘事件。KeyPreview属性用于设置是否在控件的键盘事件之前激活窗体的键盘事件。KeyPress(KeyAscii As Integet)事件是在对象具有焦点时,按下键盘上的键时触发的事件,其中的KeyAscii参数是所按键的ASCII的代码,每个字符的大、小写形式都是不同的键代码。而Chr()可返回ASCII码对应的字符。KeyDown(KeyCode As Integer,Shift as Integer)事件有两个参数,其中,KeyCode参数是表示所按键的位置信息的代码,只要按下键,就返回该键的位置信息,不区分大小写,一律作为大写字符解释。本题的功能为输入A时,KeyDown事件输出大写字符A,而KeyPress事件则输出小写字符a。