Переназначение клавиш Win + влево, чтобы домой не с клавиатуры


Попытка смоделировать функциональную клавишу + стрелки, где, например, Fn + слева = главная .

Я хочу иметь возможность удерживать shift и выделять текст, поэтому я также использую подстановочный знак *.

*<#Left::Home

Это работает только в том случае, если shift удерживается. Ничего не происходит, если сдвиг идет вверх. - Что случилось?

1 3

1 ответ:

Андреас,

Когда вы определяете переназначение , Как вы это сделали, исходный ярлык windows остается активным (не спрашивайте меня, почему...). Вы можете отключить эти предопределенные горячие клавиши Windows в реестре, но более простой способ-превратить их в горячие клавиши. При использовании горячих клавиш и команды send (или SendInput) клавиши-модификаторы игнорируются (в отличие от вашего умного переназначения). Это означает, что вам придется "ловить" каждую комбинацию. Ниже я показал длинный (по сравнению с вашим решение) версия. Извините, но, насколько я знаю, это единственный способ (или вы можете использовать * и тест для клавиш Shift/Ctrl/Alt с GetKeyState, но это делает его более сложным).

#Left::Send, {Home}
+#Left::Send, +{Home}