问题描述
执行宏时,按住 LMB + RMB 时,有时按钮保持按下状态。如何在不求助于 PressAndReleaseMouseButton(1) 的情况下解决此问题?甚至有可能吗?
EnablePrimaryMouseButtonEvents(true);
function OnEvent(event,arg)
if IsMouseButtonpressed(1) then
repeat
PressMouseButton(1)
Sleep(33) if not IsMouseButtonpressed(3) then break end
ReleaseMouseButton(1)
PressMouseButton(1)
Sleep(33) if not IsMouseButtonpressed(3) then break end
ReleaseMouseButton(1)
PressMouseButton(1)
Sleep(33) if not IsMouseButtonpressed(3) then break end
ReleaseMouseButton(1)
until not IsMouseButtonpressed(1)
end
end
附言不需要循环,应该执行到最后停止,或者松开按钮时提前停止。
解决方法
function OnEvent(event,arg)
if event == "PROFILE_ACTIVATED" then
EnablePrimaryMouseButtonEvents(true)
elseif event == "MOUSE_BUTTON_PRESSED" and arg == 1 and IsMouseButtonPressed(3) then
for i = 1,3 do -- press LMB 3 times and stop
PressMouseButton(1)
Sleep(33)
ReleaseMouseButton(1)
Sleep(33)
if not IsMouseButtonPressed(3) then break end
end
end
end