Funktionsreferenz

_GUICtrlComboBox_GetEditSel

Ermittelt die Position des Startzeichens und des Endzeichens der aktuellen Markierung in einem Edit-Control einer ComboBox

#Include <GuiComboBox.au3>
_GUICtrlComboBox_GetEditSel($hWnd)

 

Parameter

$hWnd Handle des Controls

 

Rückgabewert

Erfolg: Array im folgenden Format:
    [0] - Position des Startzeichens
    [1] - Position des Endzeichens
Fehler: -1

 

Bemerkungen

Falls diese Nachricht an eine ComboBox mit dem Stil $CBS_DROPDOWN oder $CBS_DROPDOWNLIST gesendet wird, so wird diese Funktion fehlschlagen.

- - - - - - - - Erklärung der Controls - - - - - - - -

 

Verwandte Funktionen

_GUICtrlComboBox_SetEditSel, _GUICtrlComboBoxEx_SetEditSel

 

Beispiel


#AutoIt3Wrapper_au3check_parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIComboBox.au3>
#include <GuiConstantsEx.au3>

Opt('MustDeclareVars', 1)

$Debug_CB = False ; Prüft den Klassennamen (ClassName), der an die ComboBox/ComboBoxEx-Funktion übergeben wird. Setze dies versuchsweise auf True und verwende dann ein Handle zu einem anderen Control, um die Funktionsweise zu verstehen.

Global $iMemo

_Main()

Func _Main()
    Local $aSel, $hCombo

    ; Erstellt eine GUI
    GUICreate("ComboBox: Ermittelt Zeichen im Input-Control einer ComboBox", 400, 296)
    $hCombo = GUICtrlCreateCombo("", 2, 2, 396, 296)
    $iMemo = GUICtrlCreateEdit("", 2, 32, 396, 266, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Fügt Dateien hinzu
    _GUICtrlComboBox_BeginUpdate($hCombo)
    _GUICtrlComboBox_AddDir($hCombo, @WindowsDir & "*.exe")
    _GUICtrlComboBox_EndUpdate($hCombo)

    ; Wählt ein Item aus
    _GUICtrlComboBox_SetCurSel($hCombo, 2)

    ; Wählt Zeichen im Input-Control einer ComboBox aus
    _GUICtrlComboBox_SetEditSel($hCombo, 0, 4)

    ; Ermittelt Zeichen im Input-Control einer ComboBox
    $aSel = _GUICtrlComboBox_GetEditSel($hCombo)
    MemoWrite(StringFormat("Ermittelt Zeichen im Input-Control einer ComboBox: %d - %d", $aSel[0], $aSel[1]))

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main

; Gibt eine Zeile im Memo-Fenster aus
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite