问题 单项选择题

设有窗体的Form_MouseMove事件过程如下:
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
K(Button And 3) = 3 Then
Print "检查按键"
End If
End Sub
关于上述过程,以下叙述中正确的是( )。

A) 按下鼠标左键时,在窗体上显示“检查按键”
B) 按下鼠标右键时,在窗体上显示“检查按键”
C) 同时按下鼠标左、右键时,在窗体上显示“检查按键”
D) 不论做何种操作,窗体上都不会显示

答案

参考答案:C

解析: MoseMove事件中的Button表示鼠标所有按键的状态。用0、1、2三个位表示左、右、中键,当按下某个键时,相应位是1,否则是0。三位的二进制数也可转换为十进制数,作为Button的值。如表:

Button参数值 操作
000(十进制0) 未按任何键
001(十进制1) 左键被按下(默认)
010(十进制2) 右键被按下
011(十进制3) 左、右键同时被按下
100(十进制4) 中间键被按下
101(十进制5) 同时按下中间和左键
110(十进制6) 同时按下中间和右键
111(十进制7) 3个键同时被按下
本题中当Button值为011或111时,(Button And 3)=3,条件才成立,窗体上显示“检查按键”。这说明只要同时按下鼠标的左右键时,在窗体上就显示“检查按键”。故选C。

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