У меня есть программа, которая увеличивает при нажатии кнопки MButton при перемещении мыши вверх и вниз.

Поскольку это кажется мне немного странным, я решил использовать AHK, чтобы позволить этой программе увеличивать масштаб, когда колесо мыши поворачивается, пока нажата кнопка RButton.

Это моя нерабочая идея (закомментировал еще один нерабочий подход):

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Recommended for catching common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
SetTitleMatchMode, 1 ; 1: A window's title must start with the specified WinTitle to be a match.

#IfWinActive Zooming Viewer
~RButton & WheelDown::
    Click, up, right
    Click, down, middle
    Click, Rel, 0, 10, 0
    Click, up, middle
    Click, down, right
~RButton & WheelUp::
    Click, up, right
    Click, down, middle
    Click, Rel, 0, -10, 0
    Click, up, middle
    Click, down, right

;   MouseClick, R, , , , , U
;   MouseClick, M, , , , , D
;   MouseClick, , 0, -10, , , , R
;   MouseClick, M, , , , , U
;   MouseClick, R, , , , , D

Спасибо за любые советы, чтобы я мог начать работать, Питер

1 ответ1

0

Спасибо, Михаил В. Это было правильное предложение, приведшее к основанию, что Ctrl-Wheel добился цели. Во-вторых, изменение SendMode на "Event" дает дополнительную стабильность. В-третьих, "возврат" помогает изолировать оба направления увеличения.

Итак, это работает:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Recommended for catching common errors.
SendMode Event
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
SetTitleMatchMode, 1 ; 1: A window's title must start with the specified WinTitle to be a match.

#IfWinActive Zooming Viewer
~RButton & WheelDown::
    Send {Ctrl Down} {WheelUp} {Ctrl Up}
    return
~RButton & WheelUp::
    Send {Ctrl Down} {WheelDown} {Ctrl Up}
    return

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .