Sélectionne une plage de caractères
#include <GuiEdit.au3>
_GUICtrlEdit_SetSel ( $hWnd, $iStart, $iEnd )
$hWnd | ID/handle du contrôle |
$iStart | Indique la position de départ de la sélection. |
$iEnd | Indique la position de fin de la sélection. |
La valeur de départ peut être supérieure à la valeur de fin.
La plus faible des deux valeurs indique la position du premier caractère de la sélection.
La valeur la plus élevée indique la position du premier caractère au-delà de la sélection.
La valeur de départ est le point d'ancrage de la sélection, et la valeur de fin est l'extrémité active.
Si l'utilisateur utilise la touche SHIFT pour ajuster la taille de la sélection, l'extrémité active peut se déplacer, mais le point d'ancrage reste le même.
Si $iStart vaut 0 et $iEnd vaut -1, tout le texte du contrôle d'édition est sélectionnée.
Si $iStart vaut -1, toute sélection en cours est désactivée.
Le contrôle affiche un caret clignotant à la position $iEnd quelles que soient les valeurs relatives de $iStart et $iEnd.
_GUICtrlEdit_GetSel, _GUICtrlEdit_ReplaceSel
#include <GUIConstantsEx.au3> #include <GuiEdit.au3> #include <GuiStatusBar.au3> #include <WindowsConstants.au3> Example() Func Example() Local $hStatusBar, $idEdit, $hGUI Local $sWow64 = "" If @AutoItX64 Then $sWow64 = "\Wow6432Node" Local $sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE" & $sWow64 & "\AutoIt v3\AutoIt", "InstallDir") & "\include\_ReadMe_.txt" Local $aPartRightSide[3] = [190, 378, -1], $aSel ; Crée une GUI $hGUI = GUICreate("Edit Set Sel", 400, 300) $idEdit = GUICtrlCreateEdit("", 2, 2, 394, 268, BitOR($ES_WANTRETURN, $WS_VSCROLL)) $hStatusBar = _GUICtrlStatusBar_Create($hGUI, $aPartRightSide) _GUICtrlStatusBar_SetIcon($hStatusBar, 2, 97, "shell32.dll") GUISetState(@SW_SHOW) ; Définit les marges _GUICtrlEdit_SetMargins($idEdit, BitOR($EC_LEFTMARGIN, $EC_RIGHTMARGIN), 10, 10) ; Définit le texte _GUICtrlEdit_SetText($idEdit, FileRead($sFile)) ; Définit la sélection _GUICtrlEdit_SetSel($idEdit, 15, 20) ; Obtient la sélection $aSel = _GUICtrlEdit_GetSel($idEdit) _GUICtrlStatusBar_SetText($hStatusBar, "Start: " & $aSel[0]) _GUICtrlStatusBar_SetText($hStatusBar, "End: " & $aSel[1], 1) ; Boucle jusqu'à ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete() EndFunc ;==>Example