Самый простой способ создать подлинный макрос с помощью AutoHotkey - щелчок мышью Дело в том, что код длинный и неэффективный, поэтому, если вы не возражаете, вы можете реализовать большинство макросов одним щелчком мыши (например, вы можете делать все: от рабочего стола до новой папки, чтобы запустить текстовый файл одним щелчком мыши,
- Простая установка AutoHotkey, базовое использование, простой пример
- Самое полное и простое руководство по движению и управлению мышью AutoHotkey на Земле
Существует множество макросов AutoHotkey, связанных с мышью, и вы можете реализовать большинство событий, связанных с мышью, если знаете только три вещи: «MouseMove, MouseClick, MouseGetPos» - вам не нужны «Click, MouseClickDrag, LeftClick, RightClick» (Позже мы нажмем «ControlClick» и отключим элемент управления, фактически не используя мышь.
Как работает MouseMove?
MouseMove, X, Y [, Speed, Relative]
Объявите команду для перемещения мыши с помощью «MouseMove» и укажите координаты мыши с введенными значениями «X» (горизонтальный) и «Y» (вертикальный). Если вы хотите переместить мышь в положение «100px» справа от верхнего левого угла экрана и «100px» внизу, кодируйте следующим образом.
MouseMove, 100, 100
Значение в скобках не обязательно мало, но код работает и устанавливает скорость, с которой мышь движется с помощью «Скорость». «0» перемещается немедленно, чем выше число, тем медленнее оно перемещается, а «100» является пределом. Если ничего не установлено, применяется значение по умолчанию «2». Если вы хотите переместить мышь непосредственно к координатам «x100», «y100», кодируйте следующим образом.
MouseMove, 100, 100, 0
«Относительный» изменяет относительные команды для перехода в абсолютное положение с существующими значениями «X» и «Y», т.е.
MouseMove, 100, 100
Перемещает мышь в позиции «x100» и «y100» на экране.
MouseMove, 100, 100, , R
Если вы добавите «Относительный» или «R», он переместит 100 точек от оси «X» и «100» к оси «Y» в текущей позиции указателя. Если вы пишете отрицательное значение, оно движется в противоположном направлении.
Как работает MouseClick?
MouseClick [, WhichButton, X, Y, ClickCount, Speed, DownOrUp, Relative]
Основная операция аналогична «MouseMove», но она не только перемещается, но и вводит такие данные, как щелчок левой кнопкой мыши, щелчок правой кнопкой мыши, нажатие кнопки колеса, поворот кнопки колеса, кнопка x (дополнительная кнопка слева от игровой мыши и т. Д.) ,
Код в скобках работает без кода, и по умолчанию, если он опущен, это «WhichButton = Left», «X, Y = текущая позиция», «ClickCount = 1», «Speed = 2».
Вот код, который когда-то щелкает левой кнопкой мыши в текущем местоположении:
MouseClick
Вот код, который нужно один раз щелкнуть правой кнопкой мыши на текущем местоположении. (Вы можете ввести специальные клавиши, такие как «Влево» для щелчка левой кнопкой мыши, «Вправо» для щелчка правой кнопкой мыши, «Середина» для щелчка колеса, «Колесо», «Колесо вниз» колесо вверх и вниз, «Xbutton1», «xbutton2» И может быть сокращено до L, R, M, WU, WD, X1 и X2 соответственно.
MouseClick, Right
Вот код для нажатия на координаты «x100», «y100».
MouseClick, Left, 100, 100
Вот код, который дважды щелкает по координатам «x100», «y100»:
MouseClick, Left, 100, 100, 2
Вот код, который немедленно перемещает координаты «x100» и «y100» и дважды щелкает их.
MouseClick, Left, 100, 100, 2, 0
«x100», «y100» Перейти к координатам и удерживать нажатой левую кнопку мыши.
MouseClick, Left, 100, 100, , , D
Вот код для перемещения к координатам «x100», «y100», щелкните левой кнопкой мыши, чтобы перетащить, и щелкните левой кнопкой мыши, чтобы «x200», «y200»
MouseClick, Left, 100, 100, , , D MouseClick, Left, 200, 200, , , U
Код, который перемещается относительно текущей позиции указателя мыши на «x100» и «y100» вместо перемещения по абсолютному значению в координатах «x100» и «y100» на экране, выглядит следующим образом.
MouseClick, Left, 100, 100, , , , R
Функция и использование MouseGetPos
MouseGetPos [, OutputVarX, OutputVarY, OutputVarWin, OutputVarControl, Flag]
Функции, связанные с MouseGetPos, такие же, как указано выше.
MouseGetPos, OutputVarX, OutputVarY
Вам нужно только знать вышеуказанные функции. Код, который хранит координаты текущей позиции мыши в значениях 'OuputVarX' и 'OutputVarY' и фактически возвращает координаты 'x100' и 'y100' и тому подобное.
MouseGetPos, 1X, 1Y MouseMove, 100, 100 MouseMove, %1X%, %1Y%
Далее, этот MouseGetPos является наиболее часто используемым назначением. Если вы хотите переместить положение мыши на «x100» или «y100» в сохраненной позиции, вы можете кодировать следующим образом.
MouseGetPos, 1X, 1Y MouseMove, 1X+100, 1Y+100
На первый взгляд, это может выглядеть как «Относительная» функция предыдущего «MouseMove», но поскольку значения «1X» и «1Y» сохраняются во время работы соответствующего AutoHotkey, особенность.
Пример практики
Вот реальный код дела, который использует все изученные сегодня функции для завершения и фактически нажимает кнопку F1, чтобы сохранить текущую позицию, а затем нажимает на координаты «x100», «y100» и возвращает снова.
F1:: MouseGetPos, 1X, 1Y MouseClick, Left, 100, 100 MouseClick, Left, %1X%, %1Y% Return
Если вы понимаете только то, что находится на этой странице, вы можете сказать, что освоили основные события мыши для AutoHotkey. Так что, даже если вы не поняли это сразу, давайте сохраним это, а затем освоим снова, когда вам это нужно. Лучше всего попытаться вставить примеры самостоятельно или попробовать написать код с содержанием, которое вы действительно изучили.
- Простая установка AutoHotkey, базовое использование, простой пример
- Самое полное и простое руководство по движению и управлению мышью AutoHotkey на Земле
Хорошее руководство!
Как раз понадобилась команда “MouseGetPos” из примера.
Просто в разделах MouseClick или MouseMove даже намёка не было на это. А откуда тогда узнавать??))
Спасибо!