Используйте трекбол для прокрутки, масштабирования и т. д.

У меня есть трекбол Logitech Marble (что здорово, кстати). Установив одну из дополнительных кнопок в качестве "средней" кнопки мыши, когда я нажимаю ее, многие приложения (например, браузеры) начнут "режим прокрутки", так что перемещение трекбола будет прокручиваться вверх и вниз. В большинстве случаев этого достаточно, но я считаю, что было бы намного круче, если бы у меня было несколько "режимов", чтобы делать разные вещи, такие как масштабирование, панорамирование, вращение (особенно в GIMP). Затем, когда я удерживаю CTRL, CTRL + SHIFT или некоторые такие, это войдет в новый режим, и трекбол будет вести себя по-другому.

Я нашел пару вопросов, подобных этому, которые предлагают использовать AutoHotKey, но я не нашел пример сценария, чтобы сделать это, и я не могу узнать, чтобы отслеживать движения мыши в AHK. Любые указатели?

горячая клавиша для scrollwheel

средство для трекбола без колеса прокрутки?

спасибо!

5
задан Community
30.04.2023 21:15 Количество просмотров материала 2962
Распечатать страницу

1 ответ

после того, как некоторое время возился, я придумал этот скрипт, который работает довольно хорошо. Удерживая нажатой CapsLock переходит в режим" колесо мыши". Также можно удерживать CapsLock+Ctrl, чтобы получить альтернативное поведение (например, масштабирование), в зависимости от приложения. Скрипт должен постоянно сбрасывать положение мыши, чтобы она оставалась на экране, поэтому он скрывает курсор на время режима (захватите скрипт сокрытия курсора так же).

CoordMode, Mouse, Screen

*CapsLock:: 
    MouseGetPos, xposinit, yposinit
    xposlast := xposinit
    yposlast := yposinit

    SystemCursor("Off")

    SetTimer, ButtonHold, 10
    KeyWait, CapsLock
    SetTimer, ButtonHold, off

    MouseMove, xposinit, yposinit, 0
    SystemCursor("On")

    Return

    ButtonHold:
        MouseGetPos, xpos, ypos

        if (ypos > yposlast) {
            MouseClick, WheelDown
        } else if (ypos < yposlast) {
            MouseClick, WheelUp
        }

        MouseMove, xposlast, yposlast, 0
3
отвечен jdve 2023-05-02 05:03

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх