Jak używać klawiatury do symulacji przewijania kółka myszy za pomocą AutoHotkey?

13

Szukam sposobu przewijania za pomocą klawiatury za pomocą AutoHotkey. Byłoby również świetnie, gdybym mógł w jakiś sposób poprawić prędkość przewijania.

Jarek
źródło

Odpowiedzi:

13

Możesz użyć tej MouseClickfunkcji do symulacji kółka myszy. Oto przykładowy skrypt, który pozwala przewijać, przytrzymując klawisz CapsLock i naciskając „w”, aby przewinąć w górę lub „s”, aby przewinąć w dół:

CapsLock & w::
 MouseClick,WheelUp,,,10,0,D,R
return

CapsLock & s::
 MouseClick,WheelDown,,,10,0,D,R
return

Możesz przyspieszyć, zmieniając na 10większą wartość. Jest to liczba „zaczepów”, przez które kółko ma się przewijać.

Istnieje również skrypt na autohotkey.com, który konfiguruje wszystkie przyciski myszy i ruchy na NumPad, chociaż nie próbowałem tego.

yhw42
źródło
Chciałbym przypisać to polecenie do klawiszy: ctrl+alt+updo przewijania w górę i ctrl+alt+downdo przewijania w dół Ale nic się nie dzieje, przewijanie nie działa. Proszę o pomoc, dzięki.
IGRACH
1
Bardzo ładna odpowiedź, sir
saeed arab sheybani,
2

To jest skrypt, który właśnie opracowałem. Naciśnij 0 i klawisze strzałki w górę lub w dół, aby wykonać operację. Jeśli nie masz klawiatury numerycznej na komputerze, zawsze możesz dostosować dwa klawisze według własnego uznania. Działa tak, że możesz przytrzymać 0 i klawisz strzałki i kontynuować szybkie przewijanie. Może lepiej niż samo kółko przewijania?

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
Exaskryz
źródło
1

Klawisze skrótu kółka myszy [Windows NT / 2000 / XP lub nowszy]

Klawisze skrótów, które uruchamiają się po obróceniu kółka myszy, są obsługiwane za pomocą nazw kluczy WheelDown i WheelUp . WheelLeft i WheelRight są również obsługiwane w wersji 1.0.48 +, ale nie mają wpływu na systemy operacyjne starsze niż Windows Vista. Oto kilka przykładów skrótów kółka myszy:

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.

W wersji 1.0.43.03 + wbudowana zmienna A_EventInfo zawiera wartość, o którą koło zostało obrócone, co zwykle wynosi 1. Jednak A_EventInfo może być większa lub mniejsza niż 1 w następujących okolicznościach:

  • Jeśli sprzęt myszy zgłasza odległości mniejsze niż jedno wycięcie, A_EventInfo może zawierać 0;
  • Jeśli kółko obraca się szybko (w zależności od rodzaju myszy), A_EventInfo może być większy niż 1. Skrót podobny do tego może pomóc w analizie myszy: ~WheelDown::ToolTip %A_EventInfo%

Niektóre z najbardziej przydatnych klawiszy skrótu dla kółka myszy obejmują alternatywne tryby przewijania tekstu okna. Na przykład następująca para klawiszy skrótu przewija się w poziomie zamiast w pionie po obróceniu koła, przytrzymując lewy klawisz Control:

~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  

Wreszcie, ponieważ klawisze skrótu kółka myszy generują tylko zdarzenia obniżania (nigdy zdarzeń podwyższania), nie można ich używać jako skrótów skrótu .

[Źródło: tutaj ]

Mehper C. Palavuzlar
źródło
0

Polecam rozwiązanie z http://lifehacker.com/5626708/use-autohotkey-to-scroll-backwards-in-the-command-prompt-by-keyboard

Osobiście wolę używać klucza LWin jako modyfikatora (aby uniknąć kolizji z powiązaniem klawiszy Emacsa):

LWin & PgUp ::
  Wyślij {WheelUp}
Powrót

LWin i PgDn ::
  Wyślij {WheelDown}
Powrót

To rozwiązanie różni się od rozwiązania yhw42 o wiele prostsze do zrozumienia i wykorzystuje standardowe ustawienia Windows do przewijania (jak szybko przewijać).

UWAGA Te techniki są przydatne w notebookach (ponieważ touchpad może być bezużyteczny dla niektórych użytkowników) i dla użytkowników, którzy nie lubią myszy. Zdarzenie myszy wysyłane do aktywnych elementów GUI, więc musisz odpowiednio ustawić pozycję myszy.

gavenkoa
źródło