Яндекс.Метрика

UseHook -Autohotkey

Заставляет скрипт использовать хук для реализации всех или некоторых горячих клавиш.

Заставляет скрипт использовать хук для реализации всех или некоторых горячих клавиш.

#UseHook [On|Off]

Параметры

On|Off Если параметр не задан, #UseHook действует так же, как #UseHook On.

On: Хук клавиатуры будет использован для реализации всех горячих клавиш ниже вплоть до следующей директивы #UseHook Off (если она есть).

Off: Горячие клавиши будут реализованы с использованием метода по умолчанию (через функцию RegisterHotkey(), если это возможно; если нет, то с использованием хука клавиатуры).

Примечания

Как правило, горячие клавиши реализуются с использованием функции Windows API RegisterHotkey() везде, где это возможно. Однако при некоторых условиях отзывчивость (responsiveness) горячих клавиш может быть улучшена, если использовать вместо этого клавиатурный хук.

Применение этой директивы эквивалентно использованию префикса $ в определении каждой горячей клавиши. Исключением являются Windows 95/98/Me, в которых #UseHook игнорируется (хотя префикс $ работает в ограниченном варианте).

Как и все директивы, #UseHook обрабатывается только однажды при запуске скрипта, поэтому место для неё в скрипте выбирается не так, как для команд (т.е. нет необходимости помещать её внутрь процедуры). Вместо этого поместите её непосредственно перед первой из горячих клавиш, на которые должно распространяться её действие.

Горячие клавиши, использующие хук клавиатуры, не могут запускаться командой Send. Точно так же горячие клавиши мыши не могут запускаться командой Click, поскольку все они используют хук мыши. Чтобы обойти это, используйте Gosub, чтобы перейти к горячей клавише как к обычной метке. Например: Gosub #LButton.

Если данной директивы в скрипте нет, это равносильно её применению с параметром Off.

Пример

#UseHook ; Заставляет горячие клавиши ниже использовать хук. #x::MsgBox, Эта горячая клавиша реализуется через хук. #y::MsgBox, И эта также. #UseHook off #z::MsgBox, Но не эта.
Теги страницы: