Вопрос

Я хочу, чтобы мой АлтГр ключ, чтобы вести себя точно так же, как левый Альт.
Обычно я занимаюсь подобными вещами с Автоотключение, но я открыт для разных решений.

Я попробовал это:

LControl & RAlt::Alt

И Autohotkey отобразил сообщение об Alt непризнанное действие.
Затем я попробовал следующий код:

LControl & RAlt::
  Send {Alt down}
  KeyWait LCtrl
  KeyWait Ralt
  Send {Alt up}
return

какой вид работ - я могу использовать АлтГр клавиша для доступа к горячим клавишам, но она по-прежнему ведет себя по-другому:
Когда я нажимаю и отпускаю левую Альт, первый пункт меню в текущей программе получает фокус.
Нажатие и отпускание АлтГр с этим скриптом ничего не происходит.

Есть какие-нибудь идеи?Возможно ли это вообще с помощью Autohotkey?(переназначение справа Ctrl и Сдвиг слева от их братьев и сестер был кусок пирога)


Примечание:Я попробовал переключиться Alt Для LAlt в коде, и это не имело никакого значения.

Это было полезно?

Решение

Спасибо вам всем за ответы.Я не смог решить это с помощью AutoHotkey - ответ PhilLho был близок, но мне действительно нужно было точно такое же поведение, как с left Альт Клавиша.

Однако, в штука с реестром на самом деле сработало так, как мне было нужно.

Сохраните это как AltGR_to_LeftAlt.рег файл и запустите его:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,38,00,38,e0,00,00,00,00

Или есть инструмент с графическим интерфейсом, который делает это за вас - он называется Острые клавиши и работает превосходно:
SharpKeys in action

О, и не забудьте перезагрузиться или выйти из системы - до тех пор это не будет работать!

Другие советы

Как указал PhiLho, Windows предоставляет способ переназначить любой ключ через раздел реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout.Общий обзор можно найти по адресу Средство сопоставления кода сканирования для Windows.Вероятно, лучшее описание - это Ответы на Сопоставление Scancode или Изменение значений ключа.

Я использую этот подход, чтобы поместить Windows Key на Caps Lock, потому что на моей клавиатуре нет Windows Key и мне не нужно Caps Lock.

Я добился достойного поведения, объединив две горячие клавиши:

LControl & RAlt::Send {Alt}
RAlt::Alt

Первый предназначен для автономного нажатия клавиши (избегайте удерживать ее нажатой ...), второй используется как комбинация (Альт+F, и т.д.).
Это не идеально, вы не можете создать такую комбинацию, как Ctrl+Альт+T, но, возможно, этого достаточно для ваших нужд.

Обратите внимание, что вы можете выполнить постоянное переназначение с помощью реестра.Видишь этот пост на форуме для примера.Не уверен, что это применимо к составным ключам, подобным этому, но я подумал, что должен упомянуть об этом...

Это сработало для меня:

LControl & *RAlt::Send {LAlt Down}
LControl & *RAlt Up::Send {LAlt Up}

И это для того, чтобы сопоставить его с ключом Windows:

LControl & *RAlt::Send {LWin Down}
LControl & *RAlt Up::Send {LWin Up}

Изменение реестра с помощью SharpKeys (см. Выше), однако, более надежно (если у вас есть доступ администратора).

В AHK, можете ли вы сделать:

LControl & RAlt::!

Или

<^>!::!

Если вы хотите сопоставить этот ключ глобально и без необходимости перезапускать систему при каждом изменении (но один раз), вам может потребоваться написать драйвер фильтра клавиатуры для этой цели.Смотри здесь.

Редактор реестра Windows Версии 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Раскладка клавиатуры] "Карта сканкодов"=шестнадцатеричное значение: 00,00,00,00,00,00,00,00,02,00,00,00,00,38,00,38,e0,00,00,00,00

  1. Сохраните приведенный выше код в reg-файле
  2. Объедините его в реестре
  3. перезагрузите свой компьютер
  4. теперь проверьте
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top