如何判断鼠标左键是否按下

原来如此 2008-08-05 03:51:50
如何判断鼠标左键是否按下?我说的鼠标按下的位置不是指窗体中的某个控件,而是任意位置(包括窗体外)的判断.就是鼠标的所在位置的地方判断按键是否按下.
...全文
516 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
holyw 2011-03-08
  • 打赏
  • 举报
回复
学习了。
东方之珠 2008-08-05
  • 打赏
  • 举报
回复
用全局钩子也可以.
http://blog.csdn.net/Modest/archive/2006/10/21/1344213.aspx
啊的发哦 2008-08-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 happy_sea 的回复:]
用一个Timer控件和一个API就可以实现了:

VB codePrivate Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Sub Form_Load()
Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
Dim Res As Long
Res = GetAsyncKeyState(1)
If Res = -32767 Then
Debug.Print "鼠标左键被按下!"
End If
End Sub
[/Quote]
happy_sea 2008-08-05
  • 打赏
  • 举报
回复
用一个Timer控件和一个API就可以实现了:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Sub Form_Load()
Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
Dim Res As Long
Res = GetAsyncKeyState(1)
If Res = -32767 Then
Debug.Print "鼠标左键被按下!"
End If
End Sub
xiaoting924 2008-08-05
  • 打赏
  • 举报
回复
用事件控制onMouseDown事件,当鼠标按下后触发该事件。
jacklygoodluck 2008-08-05
  • 打赏
  • 举报
回复
API
ChinaITOldMan 2008-08-05
  • 打赏
  • 举报
回复
Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
MsgBox "Left button is pressed!"
End If
End Sub
jhone99 2008-08-05
  • 打赏
  • 举报
回复
具体说一下你想干什么用?

7,763

社区成员

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

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