请问如何判断出鼠标从一个“命令按钮”上移开?

woookaooo 2003-05-17 05:39:37
请问如何判断出鼠标从一个“命令按钮”上移开?
...全文
37 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
danielinbiti 2003-05-17
  • 打赏
  • 举报
回复
用这个吧。
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
lee_j 2003-05-17
  • 打赏
  • 举报
回复
最好的办法就是用api捕捉 WM_MOUSELEAVE 消息
woookaooo 2003-05-17
  • 打赏
  • 举报
回复
TO 天才的我:方法的确很妙,但是似乎不太灵敏:如果两个按钮相隔很近,鼠标移动快,就不很灵敏有时不能正确判断出。有解决的办法吗?谢谢!
ywpg 2003-05-17
  • 打赏
  • 举报
回复
up

楼上的妙
TimLee✿ 2003-05-17
  • 打赏
  • 举报
回复
最简单的方法~给Commandbutton旁边的控件加上Mousemove事件
meil 2003-05-17
  • 打赏
  • 举报
回复
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

End Sub
meil 2003-05-17
  • 打赏
  • 举报
回复
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

End Sub
danielinbiti 2003-05-17
  • 打赏
  • 举报
回复
Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long
Declare Function ReleaseCapture Lib "user32" () As Long

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧