用这个吧。
Private Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim MouseEnter As Boolean
MouseEnter = (0 <= X) And (X <= Command1.Width) And (0 <= Y) And (Y <= Command1.Height)
If MouseEnter Then
SetCapture Command1.hwnd
Text1.Text = "Mouse in picture!"
Else
Text1.Text = "Mouse out!"
ReleaseCapture
End If
End Sub
Dim i As Integer
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
i = 1
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If i = 1 Then
If Not (X > Command1.Left And X < Command1.Left + Command1.Width And _
Y > Command1.Top And Y < Command1.Top + Command1.Height) Then
MsgBox "鼠标已离开当前按钮!"
i = 0
End If
End If
Dim i As Integer
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
i = 1
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If i = 1 Then
If Not (X > Command1.Left And X < Command1.Left + Command1.Width And _
Y > Command1.Top And Y < Command1.Top + Command1.Height) Then
MsgBox "ds"
i = 0
End If
End If