求助:如何用键盘模拟鼠标长按效果【已解决】
本帖最后由 liulong1567 于 2013-11-19 20:12 编辑我设置了一个热键,比如:F1键。我想实现点击F1键就是点击鼠标左键的效果。于是我就写了一句话:HotKeySet("{F1}", "OnMouseLeft"),可是这样实现不了鼠标长按效果。如果我一直按住F1键,就会连续响应OnMouseLeft函数,而这不是我想要的。
有谁会这个技术? 指教指教吧 MouseClickDownDelay 更改在松开按键之前按住按钮的时间长度.
以毫秒为单位(默认值 = 10).
Opt('MouseClickDownDelay' , 1000) ;按住按钮1秒 MouseDown("left")
Sleep(5000)
MouseUp("left") 本帖最后由 zldfsz 于 2013-11-19 18:58 编辑
#include <Misc.au3>
HotKeySet("{F1}", "OnMouseLeft")
While 1
Sleep(1)
If _IsPressed("1B") Then ExitLoop;ESC键退出
WEnd
Func OnMouseLeft()
If _IsPressed("70") Then
HotKeySet("{F1}")
MouseDown("left")
While _IsPressed("70")
Sleep(1)
WEnd
MouseUp("left")
EndIf
Sleep(1)
HotKeySet("{F1}", "OnMouseLeft")
EndFunc ;==>OnMouseLeft 回复 4# zldfsz
大神呀,要的就是这个效果,这代码之清晰、这流程之精炼、这效果之满意,让我十分佩服。感谢感谢呀!!!!! 回复 5# liulong1567
其实这是帮助文件里面的代码,我就修改一下就这样了 回复 6# zldfsz
大神:你这个代码我调试了一下,可以达到我想要的的效果,可是有一点不好的是:假如我设置了A键为模拟鼠标左键效果,但是在一直按住键盘A键的时候,还是会向系统发送点击A键消息,如何才能不发送按键消息只发送鼠标消息呢?等待您的回复,这问题我昨晚想了好久没有结果呢
页:
[1]