Тема: AHK: Клавиши назначенные в HIDmacros не работают как модификаторы
Нужно чтобы при удерживании клавиш на второй клавиатуре клавиши на первой выполняли другое действие. На второй клавиатуре 3 клавиши, они повторяют буквы a, b и c на первой клавиатуре, поэтому я использовал HIDmacros, переназначил их на f17, f18, f19.
Я написал этот код.
w::
if ((GetKeyState("f17", "P")) and (GetKeyState("f19", "P")))
Send {Text}абвгдеёжз
else if (GetKeyState("f17", "P"))
Send ^w
else if (GetKeyState("f19", "P"))
Send +w
else
Send w
return
и он не работает. Вместо разных действий всегда выполняется 'Send w' после последнего 'else'.
Если в том же коде использовать f10 и f11 на первой клавиатуре, то выполняются разные действия.
w::
if ((GetKeyState("f10", "P")) and (GetKeyState("f11", "P")))
Send {Text}абвгдеёжз
else if (GetKeyState("f10", "P"))
Send ^w
else if (GetKeyState("f11", "P"))
Send +w
else
Send w
return
Возможно, проблема в HIDmacros, возможно в неправильной обработке нематериальных f-клавиш. Мне нужна ваша помощь чтобы разобраться.