Могу ли я изменить клавиши ввода (GetKeyState) и вывода (Send,) на основе пользовательского ввода (предпочтительно InputBox)?
Я хочу сделать скрипт, который будет временно создавать кнопку Turbo, с вводом / выводом, настраиваемым для каждого запуска. В идеале что-то вроде
InputBox, TriggerKey, Input Trigger Here ; Custom turbo trigger
InputBox, TurboKey, Input Turbo Button Here ; and custom turbo key
while NOT GetKeyState("F12", "P") { ; Just so the loop would close if you ran this
while GetKeyState(%TriggerKey%, "P") { ; when the inputted trigger is held...
Send, %TurboKey% ; rapid-fire the inputted turbo
Sleep 50
}
}
Приведенный выше код не сработал, и я не уверен, является ли это проблемой форматирования GetKeyState/InputBox, проблемой пользовательского ввода (я не вставлял правильные строки), или я просто не могу сделать индивидуальный турбо как это.
Самая последняя идея, которая у меня была для этого, состояла в том, чтобы просто написать и запустить другой файл.ahk с введенными ключами, но если это возможно без необходимости управлять несколькими файлами, это было бы здорово.
1 ответ
Это было бы лучше сделать с Hotkey
команда. Таким образом, все, что вводится в поле ввода как TriggerKey
будет запускать любой код под меткой.
InputBox, TriggerKey, Input Trigger Here ; Custom turbo trigger
InputBox, TurboKey, Input Turbo Button Here ; and custom turbo key
Hotkey, % TriggerKey, TriggerKey
Return
TriggerKey:
While ! GetKeyState("F12", "P")
{
Send, %TurboKey%
Sleep 50
}
Return