如何配置 AutoHotKey 以使用鼠标作为快捷方式?

如何配置 AutoHotKey 以使用鼠标作为快捷方式?

我正在尝试创建一个脚本,该脚本将根据以下内容更改桌面:当我按住鼠标右键(即右键单击)然后使用滚轮时。向上滚动应该转到左侧桌面,向右滚动应该转到右侧桌面,同时按住鼠标右键。我尝试将其分配给键盘 Ctrl+Win+箭头键,但脚本只是按住所有按钮和键,我必须重新启动计算机。任何帮助都非常感谢。

答案1

尝试这个:

~RButton & WheelUp::    ; next desktop
    Send, ^#{Right}     ; Ctrl+Win+Right
    ToolTip, next desktop
    SetTimer, Remove_ToolTip, 50
return

~RButton & WheelDown::  ; previous desktop
    Send, ^#{Left}      ; Ctrl+Win+Left
    ToolTip, previous desktop
    SetTimer, Remove_ToolTip, 50
return

Remove_ToolTip:
    KeyWait, RButton      ; wait for the RButton to be relased
    SetTimer, Remove_ToolTip, off
    ToolTip               ; remove the ToolTip
    SendInput, {Esc}      ; close the context menu
return

如果您想使用 WheelRight/WheelLeft,请在代码中替换WheelUpbyWheelRightWheelDownby 。WheelLeft

答案2

尝试将~前缀应用于您的热键。但请注意,鼠标键似乎具有与您遇到的性质类似的不一致行为。我自己也遇到过同样的问题,并在 AHK Discord 中询问过,但无济于事。关于“卡在触发”行为,请注意,您可以简单地重新加载脚本以释放卡住的键,或者根据它是哪个修饰键,只需再次手动调用它也可以释放该键(仅供参考,您可以使用键盘输入Win+B选择脚本的托盘图标)。虽然通常可以通过明确定义向上/向下键状态来规避这种性质的错误行为,但我注意到,无论如何,鼠标键再次特别容易受到这种类型的行为的影响。

相关内容