我有一个简短的脚本,用AHK发送Ctrl + Shift +功能键,因为这些是我在OBS中切换场景时设置的热键,但我没有运气。一旦脚本运行,它似乎是在发送密钥,但由于某种原因,OBS没有切换。如果我手动输入热键,那么它会切换OBS,所以我不知道为什么AHK不会触发"同样的方式。
这是我的剧本:
Loop{
SendInput ^+{F11}
Sleep 3000
SendInput ^+{F12}
Sleep 3000
SendInput ^+{F11}
Sleep 3000
}
答案 0 :(得分:1)
试试这个:
Loop {
ControlSend,, {Ctrl down}{F11}{Ctrl up}, ahk_class OBSWindowClass
Sleep 3000
ControlSend,, {Ctrl down}{F12}{Ctrl up}, ahk_class OBSWindowClass
Sleep 3000
ControlSend,, {Ctrl down}{F11}{Ctrl up}, ahk_class OBSWindowClass
Sleep 3000
}
答案 1 :(得分:0)
知道了。诀窍是根本不使用热键(感谢上帝,因为如果热键被另一个程序使用,它们有可能导致输入),而是直接访问OBS应用程序的元素。
我的新完整脚本如下:
Loop {
Control, ChooseString, Scene 1 Name, ListBox1, ahk_class OBSWindowClass
Sleep 30000
Control, ChooseString, Scene 2 Name, ListBox1, ahk_class OBSWindowClass
Sleep 30000
}
此论坛页面的https://autohotkey.com/board/topic/88151-obs-hotkeys-not-being-triggered/
提供帮助此外,与AHK一起安装的名为“Active Window Info(Window Spy)”的程序对所有这些都非常有帮助。