Autohotkey 在自动热键脚本中使用Windows密钥释放

Autohotkey 在自动热键脚本中使用Windows密钥释放,autohotkey,Autohotkey,我想将Windows 10虚拟桌面切换功能映射到Windows键+带自动热键的鼠标滚轮 LWin & WheelUp:: Send, {Ctrl Down}{LWin Down}{Left} SetTimer ReleaseKeys, 50 return LWin & WheelDown:: Send, {Ctrl Down}{LWin Down}{Right} SetTimer ReleaseKeys, 50 return ReleaseKe

我想将Windows 10虚拟桌面切换功能映射到Windows键+带自动热键的鼠标滚轮

LWin & WheelUp::
    Send, {Ctrl Down}{LWin Down}{Left}
    SetTimer ReleaseKeys, 50
return

LWin & WheelDown::
    Send, {Ctrl Down}{LWin Down}{Right}
    SetTimer ReleaseKeys, 50
return

ReleaseKeys: 
    If not GetKeyState("LWin","P")  
    {
        SetTimer ReleaseKeys, off
        Send {Blind}{Ctrl Up}
        Send {Blind}{LWin Up}
        WinClose Start ahk_class Windows.UI.Core.CoreWindow
    }
return
我的脚本如下所示:

LWin & WheelUp::Send ^#{Left}
LWin & WheelDown::Send ^#{Right}
桌面切换完美无瑕,我甚至可以按住Windows键,上下滚动,在桌面之间来回切换

LWin & WheelUp::
    Send, {Ctrl Down}{LWin Down}{Left}
    SetTimer ReleaseKeys, 50
return

LWin & WheelDown::
    Send, {Ctrl Down}{LWin Down}{Right}
    SetTimer ReleaseKeys, 50
return

ReleaseKeys: 
    If not GetKeyState("LWin","P")  
    {
        SetTimer ReleaseKeys, off
        Send {Blind}{Ctrl Up}
        Send {Blind}{LWin Up}
        WinClose Start ahk_class Windows.UI.Core.CoreWindow
    }
return
不幸的是,如果我在最后一个控制盘操作后按住Windows键一段时间,按键释放将发送到打开“开始”菜单的操作系统。此外,当我再次按windows键关闭“开始”菜单时,它会切换回我更改为的第一个虚拟桌面,就好像它只收到一个“切换桌面”命令一样

LWin & WheelUp::
    Send, {Ctrl Down}{LWin Down}{Left}
    SetTimer ReleaseKeys, 50
return

LWin & WheelDown::
    Send, {Ctrl Down}{LWin Down}{Right}
    SetTimer ReleaseKeys, 50
return

ReleaseKeys: 
    If not GetKeyState("LWin","P")  
    {
        SetTimer ReleaseKeys, off
        Send {Blind}{Ctrl Up}
        Send {Blind}{LWin Up}
        WinClose Start ahk_class Windows.UI.Core.CoreWindow
    }
return
所以,我的问题是:如何在我的脚本中使用这个密钥版本,并且只使用这两个命令


提前谢谢。

试试这个

LWin & WheelUp::
    Send, {Ctrl Down}{LWin Down}{Left}
    SetTimer ReleaseKeys, 50
return

LWin & WheelDown::
    Send, {Ctrl Down}{LWin Down}{Right}
    SetTimer ReleaseKeys, 50
return

ReleaseKeys: 
    If not GetKeyState("LWin","P")  
    {
        SetTimer ReleaseKeys, off
        Send {Blind}{Ctrl Up}
        Send {Blind}{LWin Up}
        WinClose Start ahk_class Windows.UI.Core.CoreWindow
    }
return