recurso de rolagem autohotkey

3

Eu recentemente tenho um trackball que não tem uma opção de rolagem. Eu não sei se isso é possível, mas existe uma maneira de detectar se o trackball está sendo movido enquanto uma tecla está sendo pressionada (digamos que a tecla alt), parar o mouse de mover e rolar de acordo com a direção do trackball ?

Encontrei uma maneira de detectar uma alteração na posição do cursor, mas não uma alteração na posição do mouse. Eu também não encontrei uma maneira de impedir que o cursor se movesse.

Você pode ajudar?

    
por Daniel 24.10.2012 / 21:05

1 resposta

5

Encontrei isso nos fóruns do AutoHotkey e o modifiquei para incluir a rolagem horizontal. Segurar o alt e mover o mouse executará uma rolagem na direção do movimento do mouse.

~*Alt::
    Loop
    {
       If !GetKeyState("Alt","P")
          break
       MouseGetPos, ax,ay
       Sleep, 50
       MouseGetPos,bx,by
       Send % (ay<by ? "{WheelDown " : "{WheelUp ") . round(Abs(ay-by)/(GetKeyState("Shift","P") ? 10 : 1)) . "}"
       Send % (ax<bx ? "{WheelRight " : "{WheelLeft ") . round(Abs(ax-bx)/(GetKeyState("Shift","P") ? 10 : 1)) . "}"
    }
Return

Fonte

    
por 25.10.2012 / 22:24