Похоже, что горячая клавиша LButton предотвращает отправку, {LButton}

Я здесь в растерянности. Как только я добавляю LButton горячую клавишу, "Отправить", {LButton}, похоже, не работает, но они появляются в недавно выполненных строках.

Env. Windows 7x64, отключенная сенсорная панель, AHK v1.1.31.01.

Я пытаюсь эмулировать приложение Wink (из DebugMode), чтобы делать снимки экрана в учебных целях. По этой причине я хочу сделать снимок экрана непосредственно перед щелчком мыши. Это выглядит легко, и я даже смутно помню, как раньше использовал подобные горячие клавиши для мыши. Однако я не могу заставить это работать.

Шаг 1: Я просто свел его к этому простому сценарию:

#InstallKeybdHook
#InstallMouseHook
#UseHook
#Persistent
Return

a::
  Send, {LButton}
Return

q::
ExitApp

При использовании этого скрипта я могу имитировать нажатие левой кнопки мыши с помощью a клавиши. Ничего особенного. Однако, как только я добавляю строку с "Hotkey, $LButton, MySendClick" или "$LButton::", ранее работавшая a горячая клавиша больше не работает. В недавно выполненных строках вы можете видеть строки "Отправить, {LButton}", но ничего не отправляется. Неожиданно a горячая клавиша фактически вызывает срабатывание горячей клавиши "$LButton::" (без отправки {LButton}). Когда я меняю a горячую клавишу для отправки "RButton" и $ LButton:: на $RButton::, тогда Send {Click} работает отлично (хотя a горячая клавиша никогда не должна запускать $RButton::).

Изначально я просто хотел иметь следующий HotKey:

$LButton::
  SoundBeep, 300, 150  ; For testing only
  ; Send, ^{PrintScreen} ; To trigger Greenshot in the background
  Sleep, 100
  Send, {LButton}
Return

Я обновился с AHK v1.1.22.04 до v1.1.31.01. Без улучшения.

Я пробовал "Click", "sendInput, {LButton}", "Send {Click}", "MouseClick, Left".

Я пробовал "$LButton::", "vk01sc000::", "Hotkey, $LButton, MyClick".

Это проблема моей конкретной конфигурации Windows 7 или "недокументированной функции AHK"?

#InstallKeybdHook
#InstallMouseHook
#UseHook
#Persistent
Return

a::
  Send, {LButton}
Return

$LButton::
  SoundBeep, 300, 150 ; Should be Send, ^{PrintScreen} ; To trigger Greenshot in the background
  MouseClick, Left
Return

q::
ExitApp

В этом последнем тестовом примере, когда $ LButton:: отключен, a горячая клавиша работает как шарм, но как только я включаю $LButton::, a горячая клавиша запускает $LButton::, и в приложения Windows не отправляется щелчок мыши..

Я был бы признателен, если бы другие пользователи Windows 7 могли быстро проверить эту проблему.

1 ответ

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

https://www.autohotkey.com/docs/Hotkeys.htm

~LButton::
  SoundBeep, 300, 150 ; Should be Send, ^{PrintScreen} ; To trigger Greenshot in the background
  KeyWait, LButton ; Wait for lbutton to be released.
Return
Другие вопросы по тегам