Exemple de l'utilisation de mouse_event

Contenu du snippet

Ben c'est un code pour les newbies, il montre comment arreter un PC proprement sans que vous touchiez a votre souris !
LLe code marche que si vous etes en 1024**** et sous Me, donc dsl mais la fleme de faire pour les autres !
En + j'ai un probleme le temps avant l'éxtintion du pc ne peut pas dépacer 1 min, donc si qqn pourrai résoudre le probleme...

Source / Exemple :


Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Declare Function SetCursorPos& Lib "user32" (ByVal X As Long, ByVal Y As Long)
Private Selection As Integer 'voir timer
'on déclare les constantes
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Const MOUSEEVENTF_WHEEL = &H80
Const MOUSEEVENTF_XDOWN = &H100
Const MOUSEEVENTF_XUP = &H200
Const WHEEL_DELTA = 120
Const XBUTTON1 = &H1
Const XBUTTON2 = &H2

Private Sub Command1_Click()
'on vérifie que le textbox ne comporte que des chiffres.
If IsNumeric(Me.Text1) = False Then
        MsgBox "Vous devez saisir des chiffres uniquement", vbCritical, "Erreur"
        Me.Text1 = ""
        Me.Text1.SetFocus
Else
Timer1.Interval = Text1.Text 'on met le temps avant l'extinssion du pc, que le gars a rempli
Timer1.Enabled = True 'on active le timer
Text1.Text = "" 'on nétoit le textbox
End If
End Sub

Private Sub Timer1_Timer()
    Select Case Selection
        Case 0
        'ici on déclare la position du curseur sur le bouton démmarer
        X = 30
        Y = 755
        'là on active la position du curseur
        SetCursorPos X, Y
        'ici on clique sur le bouton
        Call mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0) '
        'et là on relache la bouton
        Call mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0)
        Timer1.Interval = 1000
        Selection = 1
        Case 1
        'pareil sauf qu'on veut mettre sur arreter.
        X = 30
        Y = 725
        'on active le curseur sur arréter
        SetCursorPos X, Y
        'on clique
        Call mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0) '
        'on relache
        Call mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0)
        Selection = 2
        Case 2
        'vous avez compris...(on clique sur le bouton ok, de la fenetre qui s'ouvre)
        X = 460
        Y = 435
        SetCursorPos X, Y
        Call mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0) '
        Call mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0)
        End ' on met fin au prog avant l'arret de Windows
    End Select
End Sub

Conclusion :


SvP ne me chier pas dessus comme a chaque fois que quelqu'un pose une source !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.