Página 1 de 1

MoveMouse [SRC]

Publicado: 08 Oct 2011, 05:58
por K-0Z
Bueno... estaba un poco aburrido y decidi crear esta funcion para mover el puntero arrastrandolo de una coordenada a otra, el uso... ps ustedes se lo dan

Código: Seleccionar todo

Option Explicit
 
Private Type POINTAPI
    X As Long
    Y As Long
End Type
 
Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
 
Public Function MoveMouse(ByVal FinalX As Long, ByVal FinalY As Long, _
Optional ByVal InitialX As Long = -1, Optional ByVal InitialY As Long = -1, Optional ByVal TimeToWait As Long = 5) As Boolean
On Error GoTo err
 
Dim PosActual           As POINTAPI
Dim I                   As Long
Dim DX                  As Long
Dim DY                  As Long
Dim P                   As Double
Dim StepVal             As Integer
 
            GetCursorPos PosActual
 
            If InitialX = -1 Then InitialX = PosActual.X
            If InitialY = -1 Then InitialY = PosActual.Y
 
            DX = (FinalX - InitialX)
            DY = (FinalY - InitialY)
 
            P = (DY / DX)
 
            If (DX < 0) Then StepVal = -1 Else StepVal = 1
 
            For I = 1 To DX Step StepVal
                SetCursorPos InitialX + I, InitialY + Round((I * P))
                Sleep TimeToWait
            Next
 
            MoveMouse = True
Exit Function
err:
End Function
Ejemplo de uso:

Código: Seleccionar todo

MoveMouse Screen.Width / Screen.TwipsPerPixelX, Screen.Height / Screen.TwipsPerPixelY, 0, 0

Re: MoveMouse [SRC]

Publicado: 09 Oct 2011, 12:31
por $DoC
K-0Z! que alegria verte por aquí... Ojala estés más aburrido de vez en cuando para traernos estos codes xD.
el uso... ps ustedes se lo dan