问题 填空题

把窗体的KeyPreView属性设置为True,并编写如下两个事件过程:
Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)
Print KeyCode
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
Print KeyAscii
End Sub
程序运行后,如果按下B键,则在窗体上输出的数值是 [12] [13]

答案

参考答案:66

解析: KeyDown事件是返回的是键盘的直接状态,返回的是“键”,所以当按字母“B”时,KeyDown得到的KeyCode码与按字母键“b”是相同的,所以程序输出为66;当按下键盘上的某个键时,将发生KeyPress,KeyPress并不反映键盘的直接状态,当按下字母“B”时,与按下字母“b”时,对KeyPress来说,所得到的ASCII码是不一样的,KeyPress事件用来识别按键的ASCII码,所以按下“B”键,KeyAscii的值为98。

选择题
单项选择题 案例分析题