如何让组合键“win”+“。”向media_next发送指令?

如何让组合键“win”+“。”向media_next发送指令?

如何进行组合键Win+.发送指令至media_next

我尝试过用几种不同的方式书写,但总是会出现脚本错误。

我的目标是按下按键Win然后.让音乐播放器跳到下一首曲目。

请告诉我确切的句子,因为我对脚本编写完全陌生,例如,缺少一个字符对我来说将是一个巨大的障碍......

不太重要:我应该在autohotkey.ahk还是 中写这些说明shortcuts.ahk

非常感谢!

答案1

这应该可以工作(我用 VLC 和 XMPlay 测试过):

#.::Media_Next

它只会将媒体下一个键发送到活动窗口,因此如果您想在观看全屏电影或其他内容时使用热键,它就可以解决问题。如果您在屏幕角落观看视频的同时处理其他事情,则需要全局发送该键:

#.::Send {Media_Next}

当然,您的媒体播放器必须能够检测并响应实际的媒体键。有些媒体播放器默认这样做,有些媒体播放器您可以在其键映射配置中设置这样做,有些媒体播放器在具有适当的文件类型关联时会自动这样做。

正如 Sonamor 指出的那样,如果您正在运行多个媒体播放器并且它们都对媒体键作出响应,您可以将热键定位到特定的窗口(尽管根据我的经验,第一个运行的播放器往往会注册该键,从而阻止其他播放器接收它;所以你可以关闭它们并运行你想要的那个)。


为了回应更详细的问题

我不断尝试,但总是出错。这是我上次尝试的:

LWin + ,::{Media_Next}

我也尝试过:

Win + .::Media_Next

这些话有几个错误:

  • 表示+⇧ Shift,因此热键仅在⇧ Shift按住时才有效
  • ;键,因此只有按住键;时才有效;
  • 您不能使用{Media_Next}作为操作,但是可以使用:
    • Send {Media_Next}通常发送媒体下一个键或
    • Media_Next将媒体下一个键仅发送到活动窗口
  • Win无效,您需要使用#作为修饰符
  • LWin⊞ Win仅对使用热键有效。作为修饰符,您必须使用<#

因此,就您而言,您可能需要这个:

<#.::Send {Media_Next}


*我的键盘上只有一个“win”键。

那么为什么要将其特定于左侧 Windows 键呢?如果只有一个,那么指定哪个都没有区别。事实上,如果出于某种原因,制造商决定使用其他键的扫描码,那么使用通用版本会更安全。您也可以使用这个:

#.::Send {Media_Next}

答案2

您可以将以下行添加到您的 autohotkey.ahk 文件中,保存,然后右键单击托盘中的 AutoHotKey 图标选择“重新加载此脚本”:

#.::Send {Media_Next}

答案3

您还可以使用 AutoIt3 Window Spy 并使热键仅适用于 VLC Media Player

#IfWinActive, VLCWINDOW
#.::Media_Next

相关内容