Перейти на главную страничку сайта (список статей, файлы для скачивания)

ФОРУМ (здесь можно обсудить эту статью, а также саму программу AutoHotkey и проблемы её использования)

Проект перевода документации AutoHotkey: перечень переведённых статей и статей в работе.

Оригинал статьи в AutoHotkey.chm: "Click", в содержании - "Mouse Control" - "Click", v1.0.46.03.

Ник переводчика: YMP.

Настоящее имя переводчика: Юрий Попов.

Click [v1.0.43+]

Щёлкает кнопкой мыши в заданном координатами месте. Удерживает кнопку мыши. Вращает колесо мыши. Перемещает курсор мыши.

Примеры использования (все запятые необязательны):


Click Одиночный щелчок левой кнопкой в месте, где находится курсор.
Click 44, 55 Одиночный щелчок в месте с координатами 44, 55 (см. CoordMode).
Click right 44, 55 То же, только правой кнопкой.
Click 2 Двойной щелчок левой кнопкой в месте, где курсор.
Click down Нажатие и удержание левой кнопки.
Click up right Отпускание правой кнопки.

Параметры

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

X, Y: координаты места, куда нужно переместить курсор перед щелчком. Координаты считаются относительно активного окна, если только это не было изменено командой CoordMode. Если опущены, используются текущие координаты курсора.

Имя кнопки. Возможные значения: Left (левая, используется по умолчанию, если параметр опущен), Right (правая), Middle (средняя), X1 (четвёртая), X2 (пятая). У первых трёх вместо полного имени можно указывать только первую букву (L, R, M), четвёртая и пятая поддерживаются для Windows 2000/XP и более поздних. Заметьте, что в отличие от команды MouseClick левая и правая кнопки работают правильно на всех системах, даже если пользователь поменял их местами через панель управления операционной системы.

Вращение колеса. Требует Windows NT/2000/XP. Возможные значения: WheelUp (или WU) - колесо вверх (от себя), WheelDown (WD) - колесо вниз. Если указан этот параметр, то количество щелчков (см. ниже) трактуется как количество шагов поворота колеса. Однако некоторые приложения не реагируют на количество шагов больше 1. В этом случае используйте цикл, например:

Loop 5
  Click WheelUp ; Поворот колеса вверх на 5 шагов.

Количество щелчков. Если не указано, щелчок одиночный. Если задаёте координаты, количество щелчков указывайте после них, например:

Click 100, 200, 2

Если нужно просто переместить курсор, указывайте 0 в качестве количества щелчков, например:

Click 100, 200, 0

Нажатие/отпускание. Значения: Down (или D) - нажатие и удержание, Up (U) - отпускание. Если не указаны, щелчок состоит из 2-х событий - нажатия кнопки и отпускания.

Относительность координат. Значение: Relative (или Rel). Если указано, задаваемые координаты трактуются как смещение относительно текущих координат курсора. Отрицательные значения координат задают смещение влево (ось Х) и вверх (ось Y).

Примечания

Использование команды Click предпочтительнее, чем команды MouseClick, т.к. она автоматически компенсирует возможную взаимозамену пользователем левой и правой кнопок через панель управления операционной системы.

Click использует метод посылки, задаваемый командой SendMode. Чтобы изменить этот метод для конкретного щелчка, используйте соответствующую разновидность команды Send, например:

SendEvent {Click, 100, 200}

Если нужен щелчок с модификатором, проще всего использовать команду Send, например:

Send +{Click 100, 200} ; Щелчок левой кнопкой при нажатом Shift'e.
Send ^{Click 100, 200, right} ; Щелчок правой при нажатом Ctrl'e.

В отличие от команды Send, команда Click перед своим выполнением не отпускает автоматически клавиши-модификаторы (Ctrl, Alt, Shift, Win). Например, если сейчас нажат Ctrl, команда Click пошлёт Ctrl-Click, а команда Send {Click} - просто Click.

Режим посылки SendPlay может успешно генерировать события мыши в большем числе игр чем другие режимы.

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

Команда BlockInput может использоваться для предотвращения помех генерируемым событиям мыши со стороны реальных движений и щелчков мыши, производимых в это время пользователем. Однако это не требуется для режимов SendInput и SendPlay, т.к. в этих режимах действия пользователя запоминаются и выполняются позже.

После каждого нажатия и каждого отпускания кнопки мыши автоматически делается пауза (за исключением режима SendInput). Используйте команду SetMouseDelay для изменения длины этой паузы.

Перейти на главную страничку сайта (список статей, файлы для скачивания)

© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.