Obtient les coordonnées du curseur dans l'avant plan de la fenêtre.
WinGetCaretPos ( )
Succès: | Retourne un tableau à 2 éléments contenant les informations suivantes: [0] = Coordonnée X [1] = Coordonnée Y |
Échec: | Définit @error <> 0. |
Local $aCaretPos = WinGetCaretPos() If Not @error Then ToolTip("Méthode 1", $aCaretPos[0], $aCaretPos[1]) EndIf Sleep(2000) $aCaretPos = _WinGetCaretPos() If Not @error Then ToolTip("Méthode 2", $aCaretPos[0], $aCaretPos[1]) EndIf Sleep(2000) ; Une méthode plus fiable pour récupérer les coordonnées du curseur dans des éditeurs de texte MDI. Func _WinGetCaretPos() Local $iXAdjust = 5 Local $iYAdjust = 40 Local $iOpt = Opt("CaretCoordMode", 0) ; Définit "CaretCoordMode" en mode relatif et stocke l'option précédente. Local $aGetCaretPos = WinGetCaretPos() ; Récupére les coordonnées relatives du curseur. Local $aGetPos = WinGetPos("[ACTIVE]") ; Récupére la position ainsi que la hauteur et la largeur de la fenêtre active. Local $sControl = ControlGetFocus("[ACTIVE]") ; Récupére le nom du contrôle qui a le focus clavier. Local $aControlPos = ControlGetPos("[ACTIVE]", "", $sControl) ; Récupére la position ainsi que la taille du contrôle. $iOpt = Opt("CaretCoordMode", $iOpt) ; Re-initialise "CaretCoordMode" à l'option précédente. Local $aReturn[2] = [0, 0] ; Crée un tableau pour stocker la position x, y. If IsArray($aGetCaretPos) And IsArray($aGetPos) And IsArray($aControlPos) Then $aReturn[0] = $aGetCaretPos[0] + $aGetPos[0] + $aControlPos[0] + $iXAdjust $aReturn[1] = $aGetCaretPos[1] + $aGetPos[1] + $aControlPos[1] + $iYAdjust Return $aReturn ;Retour du tableau. Else Return SetError(1, 0, $aReturn) ; Retourne le tableau et définit @error à 1. EndIf EndFunc ;==>_WinGetCaretPos