Functions > Window > Controls >


ControlClick

Envoie un clic de souris à un contrôle donné.

ControlClick ( "title", "text", controlID [, button = "left" [, clicks = 1 [, x [, y]]]] )

Paramètres

title Le titre/hWnd/class de la fenêtre à atteindre. Consultez Définition spéciale de titre.
text Le texte de la fenêtre à atteindre. Consultez Définition spéciale de texte.
controlID Le contrôle avec lequel interagir. Consultez Controls.
button [optionnel] Le bouton à cliquer : "left", "right", "middle", "main", "menu", "primary", "secondary". Le bouton par défaut est le bouton "left".
clicks [optionnel] Le nombre de clics à effectuer sur le contrôle, 1 par défaut.
x [optionnel] La position x du clic sur le contrôle, centré par défaut.
y [optionnel] La position y du clic sur le contrôle, centré par défaut.

Valeur de retour

Succès: Retourne 1.
Échec: Retourne 0.

Remarques

Certains contrôles peuvent résister aux clics tant qu'ils ne sont pas dans la fenêtre active. Utilisez la fonction WinActivate() pour mettre la fenêtre des contrôles au premier plan avant d'utiliser ControlClick().
La valeur 2 pour le nombre de clics permettra d'effectuer un double-clic sur le contrôle - Cela peut également servir à lancer des programmes depuis une fenêtre de l'explorateur !

Si l'utilisateur a permuté les boutons gauche et droite de la souris dans le panneau de configuration, alors le comportement de la fonction est différent. "Left" et "right" cliquent respectivement sur les boutons gauche et droite, qu'ils soient inversés ou non. Le bouton "primary" ou "main" seront le clic principal même si les boutons sont permutés. Le bouton "secondary" ou "menu" feront apparaitre le menu contextuel même si les boutons sont permutés.

Bouton Normal Permuté
"" Gauche Gauche
"left" Gauche Gauche
"middle" Milieu Milieu
"right" Droite Droite
"primary" Gauche Droite
"main" Gauche Droite
"secondary" Droite Gauche
"menu" Droite Gauche

En relation

ControlCommand, MouseClick, WinActivate

Exemple

Example()

Func Example()
    ; Exécute le Bloc-notes
    Run("notepad.exe")

    ; Attend 10 secondes que la fenêtre du Bloc-notes apparaisse.
    Local $hWnd = WinWait("[CLASS:Notepad]", "", 10)

    ; Envoie un clic de souris vers le contrôle d'édition de bloc-notes à l'aide du handle renvoyé par WinWait.
    ControlClick($hWnd, "", "Edit1")

    ; Attend 2 secondes.
    Sleep(2000)

    ; Ferme la fenêtre du Bloc-notes en utilisant le handle renvoyé par WinWait.
    WinClose($hWnd)
EndFunc   ;==>Example