Я ищу способ прокрутки с помощью клавиатуры. Было бы также здорово, если бы я мог как-то настроить скорость прокрутки.
Как я могу использовать клавиатуру для имитации прокрутки колесика мыши с помощью AutoHotkey?
4 ответа
можно использовать MouseClick
функция для имитации колеса мыши. Вот пример сценария, который позволяет прокручивать, удерживая нажатой клавишу CapsLock и нажав ' w 'для прокрутки вверх или 's' для прокрутки вниз:
CapsLock & w::
MouseClick,WheelUp,,,10,0,D,R
return
CapsLock & s::
MouseClick,WheelDown,,,10,0,D,R
return
вы можете сделать это быстрее, изменив 10
большее значение. Это количество "защелок", которые вы хотите прокрутить.
также сценарий autohotkey.com настройки все кнопки мыши и движения на цифровой клавиатуре, хотя я не пробовал.
горячие клавиши колеса мыши [Windows NT / 2000 / XP или более поздней версии]
горячие клавиши, которые срабатывают при повороте колеса мыши, поддерживаются через имена клавиш WheelDown и WheelUp. WheelLeft и WheelRight также поддерживаются в v1.0.48+, но не влияют на операционные системы старше Windows Vista. Вот несколько примеров горячих клавиш колеса мыши:
MButton & WheelDown::MsgBox You turned the mouse wheel down while holding down the middle button.
^!WheelUp::MsgBox You rotated the wheel up while holding down Control+Alt.
в v1.0.43.03+, встроенная переменная A_EventInfo содержит сумму по который за рулем был включен, который, как правило, 1. Однако A_EventInfo может быть больше или меньше 1 при следующих обстоятельствах:
- если оборудование мыши сообщает расстояния менее одного выреза, A_EventInfo может содержать 0;
- если колесо поворачивается быстро (в зависимости от типа мыши), A_EventInfo может быть больше 1. Горячие клавиши, как могут помочь в анализе вашей мышкой:
~WheelDown::ToolTip %A_EventInfo%
некоторые из наиболее полезных горячих клавиш для колесика мыши предусмотрены альтернативные режимы прокрутки текста окна. Например, следующая пара горячих клавиш прокручивается горизонтально, а не вертикально, когда вы поворачиваете колесо, удерживая левую клавишу управления:
~LControl & WheelUp:: ; Scroll left.
ControlGetFocus, fcontrol, A
Loop 2 ; <-- Increase this value to scroll faster.
SendMessage, 0x114, 0, 0, %fcontrol%, A ; 0x114 is WM_HSCROLL and the 0 after it is SB_LINELEFT.
return
~LControl & WheelDown:: ; Scroll right.
ControlGetFocus, fcontrol, A
Loop 2 ; <-- Increase this value to scroll faster.
SendMessage, 0x114, 1, 0, %fcontrol%, A ; 0x114 is WM_HSCROLL and the 1 after it is SB_LINERIGHT.
return
наконец, поскольку горячие клавиши колесика мыши генерируют только down-события (никогда up-события), их нельзя использовать как горячие клавиши.
[источник: здесь]
Это скрипт, я просто работал. Нажмите 0 и вверх или вниз клавиши со стрелками для работы. Если у вас нет цифровой клавиатуры на компьютере, вы всегда можете настроить две клавиши по своему усмотрению. Он работает так, что вы можете удерживать 0 и клавишу со стрелкой и далее скорость прокрутки. Возможно, лучше, чем само колесо прокрутки?
0 & Up::
Loop
{
Send {WheelUp}
GetKeyState, T, Down
If T=U ; U is a state for up, D is a state for down
Break
}
Return
0 & Down::
Loop
{
Send {WheelDown}
GetKeyState, T, Down
If T=U ; U is a state for up, D is a state for down
Break
}
Return
Я рекомендую решение от http://lifehacker.com/5626708/use-autohotkey-to-scroll-backwards-in-the-command-prompt-by-keyboard
лично я предпочитаю использовать ключ LWin в качестве модификатора (чтобы избежать столкновения с привязкой ключа Emacs):
LWin & PgUp:: Send {WheelUp} Return LWin & PgDn:: Send {WheelDown} Return
Это решение отличается от yhw42 решение как много простой к поймите и он использует стандартный настройки Windows для прокрутка (как быстро свиток.)
Примечание эта техника полезна на ноутбуках (как тачпад может быть бесполезно для некоторых пользователей) и для пользователей, которые не любят мыши. Мышь событие отправить активным элементам графического интерфейса, так что вам нужно правильное место мыши позиция.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]