使用轨迹球滚动、缩放等

jdv*_*dve 5 keyboard autohotkey hotkeys trackball scrolling

我有一个罗技大理石轨迹球(顺便说一句,很棒)。通过将额外按钮之一设置为“中间”鼠标按钮,当我单击它时,许多应用程序(如浏览器)将启动“滚动模式”,以便移动轨迹球会上下滚动。大多数情况下,这已经足够了,但我认为如果我可以有几种“模式”来做不同的事情,比如缩放、平移、旋转(特别是在 GIMP 中)会更酷。然后当我按住 CTRL、CTRL+SHIFT 或其他类似的键时,它会进入一个新模式,并且轨迹球的行为会有所不同。

我发现了几个与此类似的问题,建议使用 AutoHotKey,但我还没有找到一个示例脚本来执行此操作,也找不到在 AHK 中跟踪鼠标移动的方法。任何指针?

滚轮热键

无滚轮轨迹球的补救措施?

谢谢!

小智 5

经过一段时间的摆弄后,我想出了这个运行得相当好的脚本。按住 CapsLock 进入“鼠标滚轮”模式。还可以按住 CapsLock+Ctrl 以获得替代行为(例如缩放),具体取决于应用程序。该脚本需要不断重置鼠标位置以使其保持在屏幕上,因此它会在模式持续时间内隐藏光标(也请获取光标隐藏脚本)。

CoordMode, Mouse, Screen

*CapsLock:: 
    MouseGetPos, xposinit, yposinit
    xposlast := xposinit
    yposlast := yposinit

    SystemCursor("Off")

    SetTimer, ButtonHold, 10
    KeyWait, CapsLock
    SetTimer, ButtonHold, off

    MouseMove, xposinit, yposinit, 0
    SystemCursor("On")

    Return

    ButtonHold:
        MouseGetPos, xpos, ypos

        if (ypos > yposlast) {
            MouseClick, WheelDown
        } else if (ypos < yposlast) {
            MouseClick, WheelUp
        }

        MouseMove, xposlast, yposlast, 0
Run Code Online (Sandbox Code Playgroud)