自动热键滚动功能

自动热键滚动功能

我最近买了一个没有滚动选项的轨迹球。我不知道这是否可行,但是有没有办法检测在按下某个键(比如说 alt 键)时轨迹球是否在移动,然后停止鼠标移动并根据轨迹球的方向滚动?

我找到了一种方法来检测光标位置的变化,但不能检测鼠标位置的变化。我也没有找到一种方法来阻止光标移动。

你能帮我吗?

答案1

我在 AutoHotkey 论坛上找到了这个,并对其进行了修改,使其包含水平滚动。按住 alt 并移动鼠标将沿鼠标移动的方向执行滚动。

~*Alt::
    Loop
    {
       If !GetKeyState("Alt","P")
          break
       MouseGetPos, ax,ay
       Sleep, 50
       MouseGetPos,bx,by
       Send % (ay<by ? "{WheelDown " : "{WheelUp ") . round(Abs(ay-by)/(GetKeyState("Shift","P") ? 10 : 1)) . "}"
       Send % (ax<bx ? "{WheelRight " : "{WheelLeft ") . round(Abs(ax-bx)/(GetKeyState("Shift","P") ? 10 : 1)) . "}"
    }
Return

来源

相关内容