设窗体上无任何控件,且有如下程序代码: Private Sub Form_KeyPress(KeyAscii As Integer) Print Chr(KeyAscii) End Sub Private Sub Form_KeyDown(K

admin2019-04-29  21

问题 设窗体上无任何控件,且有如下程序代码:
Private Sub Form_KeyPress(KeyAscii As Integer)
     Print Chr(KeyAscii)
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
     Print Chr(KeyCode)
End Sub
运行程序,直接按"A"键,输出结果是(    )。

选项 A、A  A
B、A  a
C、a  A
D、a  a

答案B

解析 按照事件发生的先后顺序,按下键盘上的按键时,首先触发KeyDown事件,然后再触发KeyPress事件。KeyPress事件带有一个参数,这个参数有两种形式。第一种形式是Index As Integer,只用于控件数组;第二种形式是KeyAscii As Integer,用于单个控件。KeyPress事件用来识别按键的ASCII码。参数KeyAscii是所按键的ASCII码。按下"a"键,KeyAscii的值为97。通过Chr(KeyAscii)得到"a";KeyDown事件有两个参数,即KeyCode和Shift。KeyCode参数是按键实际的ASCII码,该码以"键"为准,而不是以"字符"为准。也就是说,大写字符与小写字母使用同一个键,它们的KeyCode相同(使用大写字母的ASCII码)。通过Chr(KeyCode)得到"A";所以输出结果为"A  a",故选项B正确。
转载请注明原文地址:https://jikaoti.com/ti/VON0FFFM
0

最新回复(0)