A-A+

设有如下过程: Private Sub Form. KeyDpwn(KeyCode As I

2022-08-06 00:15:25 问答库 阅读 173 次

问题详情

设有如下过程: Private Sub Form. KeyDpwn(KeyCode As Integer,Shift As Integer) Print Chr(KeyCode) End Sub Private Sub Form. KeyUp(KeyCode As Integer,Shift As Integer) Print Chr(KeyCode+2) End Sub 若把窗体的KeyPreview属性设置为True,程序运行后,如果按“A”键,则输出结果为()。
A.A A
B.A B
C.A C
D.A D请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:C
C)【解析】本题考查窗体的键盘事件。当按下键盘上某个键时,触发KeyPress事件:按卜.键盘某个键过程中,触发事件KeyDown事件;当松开键盘某个键时,触发事件KeyUp。KeyDown和KeyUp事件返回的是键盘的直接状态(返回的是“键”),KeyCode参数是用户按下的那个键的扫描码,而KeyPress返回的是“字符”的ASCIl码,两者不同。当窗体的KeyPreview设置为True时,如果焦点从控件上跳到窗体上,则该控件的键盘事件也会被触发。题中只有窗体的KeyDown和KeyUp事件,因此当按下“A”键时,触发KeyDown事件执行“PrintChr(KeyCode)”语句,其中Chr函数的功能是将ASCIl码转换成相应的字符,因此输出字母“A”;当松开“A”键时,触发KeyUp事件执行“PrintChr(KeyCode+2)”语句,因此输出字母…C’。

考点:过程