Используйте трекбол для прокрутки, масштабирования и т. Д.
У меня есть Logitech Marble Trackball (это здорово, кстати). При установке одной из дополнительных кнопок в качестве "средней" кнопки мыши, когда я нажимаю на нее, многие приложения (например, браузеры) запускают "режим прокрутки", так что перемещение трекбола будет прокручиваться вверх и вниз. В большинстве случаев этого достаточно, но я полагаю, что было бы намного круче, если бы у меня было несколько "режимов" для выполнения разных задач, таких как масштабирование, панорамирование, вращение (особенно в GIMP). Затем, когда я удерживаю CTRL, CTRL+SHIFT или что-то подобное, он входит в новый режим, и трекбол ведет себя по-другому.
Я нашел пару вопросов, похожих на этот, которые предлагают использовать AutoHotKey, но я не нашел пример сценария для этого и не могу отследить движения мыши внутри AHK. Есть указатели?
средство от трекбола без колеса прокрутки?
Спасибо!
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