有一个名称为Fom1的窗体,上面没有控件,设有以下程序(其中方法PSet(X,Y)的功能是在坐标X,Y处画一个点)。
Dim cmdmave As Boolean
Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)
cmdmave=True
End Sub
Private Sub Form MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)
If cmdmave Then
Form1.PSet(X,Y)
End If
End Sub
Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)
cmdmave=False
End Sub
此程序的功能是______。
A) 每按下鼠标键一次,在鼠标所指位置画一个点
B) 按下鼠标键,则在鼠标所指位置画一个点;放开鼠标键,则此点消失
C) 不按鼠标键而拖动鼠标,则沿鼠标拖动的轨迹画一条线
D) 按下鼠标键并拖动鼠标,则沿鼠标拖动的轨迹画一条线,放开鼠标键则结束画线
参考答案:D
解析: 从本题提供的事件代码中可知,当按下鼠标键时,在触发的MouseDown事件过程中设置布尔变量cmdmave的值为True,当弹起鼠标键时在触发的MouseUp事件过程中设置变量cmdmave的值为False。在鼠标移动触发的MouseMove事件过程中,判断变量cmdmave的值是否为True(即是否按下鼠标键),若是,就在窗体鼠标指针经过的位置依次画点,从而形成一条线。