Меню Закрыть

Самое полное и простое руководство по движению и управлению мышью AutoHotkey на Земле

Самый простой способ создать подлинный макрос с помощью AutoHotkey - щелчок мышью Дело в том, что код длинный и неэффективный, поэтому, если вы не возражаете, вы можете реализовать большинство макросов одним щелчком мыши (например, вы можете делать все: от рабочего стола до новой папки, чтобы запустить текстовый файл одним щелчком мыши, 'Run'Это так же просто, как одна команда.) Это очень альфа-символ в макросах AutoHotkey.

Существует множество макросов AutoHotkey, связанных с мышью, и вы можете реализовать большинство событий, связанных с мышью, если знаете только три вещи: «MouseMove, MouseClick, MouseGetPos» - вам не нужны «Click, MouseClickDrag, LeftClick, RightClick» (Позже мы нажмем «ControlClick» и отключим элемент управления, фактически не используя мышь.

지구에서-가장-완벽하고-쉬운-오토핫키-마우스-이동과-제어-튜토리얼-the-most-complete-and-easiest-autohotkey-mouse-movement-and-control-tutorial-on-earth

    Как работает 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. Так что, даже если вы не поняли это сразу, давайте сохраним это, а затем освоим снова, когда вам это нужно. Лучше всего попытаться вставить примеры самостоятельно или попробовать написать код с содержанием, которое вы действительно изучили.

1 Comment

  1. Андрей

    Хорошее руководство!
    Как раз понадобилась команда “MouseGetPos” из примера.
    Просто в разделах MouseClick или MouseMove даже намёка не было на это. А откуда тогда узнавать??))
    Спасибо!

Добавить комментарий

Ваш адрес email не будет опубликован.

Posted in AutoHotkey, All

이메일 구독 - Email Subs

최선을 다해 직접 만든 콘텐츠만 공유합니다.
We share the best content we have created.