Function Reference


_GUICtrlComboBoxEx_SetEditSel

Select characters in the edit control of a ComboBox

#include <GuiComboBoxEx.au3>
_GUICtrlComboBoxEx_SetEditSel ( $hWnd, $iStart, $iStop )

Parameters

$hWnd Handle to the control
$iStart Starting position
$iStop Ending postions

Return Value

Success: True.
Failure: False, if the message is sent to a ComboBox with the $CBS_DROPDOWN or $CBS_DROPDOWNLIST style.

Remarks

The positions are 0-based. The first character of the edit control is in the zero position.
If $iStop is –1, all text from the starting position to the last character in the edit control is selected.

The first character after the last selected character is in the ending position.

For example, to select the first four characters of the edit control, use a starting position of 0 and an ending position of 4.

Related

_GUICtrlComboBox_GetEditSel, _GUICtrlComboBoxEx_GetEditSel

Example

#include <GuiComboBox.au3>
#include <GUIConstantsEx.au3>

Global $g_idMemo

Example()

Func Example()
        ; Create GUI
        GUICreate("ComboBox Get/Set Edit Sel (v" & @AutoItVersion & ")", 400, 296)
        Local $idCombo = GUICtrlCreateCombo("", 2, 2, 396, 296)
        $g_idMemo = GUICtrlCreateEdit("", 2, 32, 396, 266, 0)
        GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
        GUISetState(@SW_SHOW)

        ; Add files
        _GUICtrlComboBox_BeginUpdate($idCombo)
        _GUICtrlComboBox_AddDir($idCombo, @WindowsDir & "\*.exe")
        _GUICtrlComboBox_EndUpdate($idCombo)

        ; Select Item
        _GUICtrlComboBox_SetCurSel($idCombo, 2)

        ; Set Edit Sel
        _GUICtrlComboBox_SetEditSel($idCombo, 0, 4)

        ; Get Edit Sel
        Local $aSel = _GUICtrlComboBox_GetEditSel($idCombo)
        MemoWrite(StringFormat("Edit Sel: %d - %d", $aSel[0], $aSel[1]))

        ; Loop until the user exits.
        Do
        Until GUIGetMsg() = $GUI_EVENT_CLOSE
        GUIDelete()
EndFunc   ;==>Example

; Write a line to the memo control
Func MemoWrite($sMessage)
        GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite