Funktionsreferenz

GUICtrlRead

Liest den Status oder die Daten eines Controls.

GUICtrlRead ( controlID [, advanced] )

 

Parameter

ControlID Die Identifikationsnummer des Controls (Control-ID), wie von einer GUICtrlCreate... Funktion zurückgegeben.
advanced [optional] gibt erweiterte Informationen eines Controls zurück.
0 = (Standard) Gibt einen Wert mit dem Status oder den Daten eines Controls zurück.
1 = gibt erweiterte Informationen eines Controls zurück (siehe Bemerkungen).

 

Rückgabewert

Erfolg: Der Rückgabewert ist abhängig vom Control (siehe unten).
Fehler: Gibt 0 zurück.
Typ Wert
Checkbox, Radio Status des Buttons/Kästchens. siehe Status-Tabelle
Combo, List Der ausgewählte/markierte Wert.
Input, Edit Der eingegebene Text.
Button Die Aufschrift auf dem Button.
Date Das ausgewählte Datum.
Progress Der aktuelle Anteil (Prozent).
Slider Der aktuelle Wert.
Tab Die Nummer oder Control-ID des ausgewählten Tabs in Abhängigkeit von dem erweiterten Parameterwert.
Menu, MenuItem Status des Menüs/Eintrags. siehe Status-Tabelle
TreeView Control-ID des ausgewählten TreeView-Eintrags.
TreeViewItem Status des TreeView-Eintrags.
ListView Control-ID des ausgewählten Listeneintrags. 0 bedeutet, dass kein Eintrag ausgewählt ist.
Dummy Der Wert, der durch GUICtrlSendToDummy oder GUICtrlSetData gesetzt wurde.

 

Bemerkungen

Im "advanced" Modus enthält der Rückgabewert zusätzliche Daten des Controls (siehe unten).

Merke: nicht für alle bekannten Controls sind zusätzliche Daten verfügbar!

Typ zusätzlicher Wert
Checkbox, Radio Der Text des Controls.
Menu, MenuItem Der Text des Controls.
TreeView Der Text des aktuell markierten TreeViewItems.
TreeViewItem Der Text des TreeViewItems.
ListViewItem Der Status des ListViewItems, falls der erweiterte Stil $LVS_EX_CHECKBOXES im advanced Modus verwendet wird. Siehe Status Tabelle
Tab Die Control-ID des ausgewählten Tabs

Bei Checkboxen und Radiobuttons können mehrere Statuse als $GUI_FOCUS und $GUI_CHECKED zurückgegeben werden. So ist z. B. BitAnd(GUICtrlRead($Item),$GUI_CHECKED) zu verwenden um zu sehen ob ein Control markiert ist.

Bei Listview items können mehrere Statuse als $GUI_FOCUS und $GUI_CHECKED zurückgegeben werden (nur für ListView-Controls bei denen der advanced Modus und der erweiterte Stil LVS_EX_CHECKBOXES verwendet wird. So ist z. B. BitAnd(GUICtrlRead($Item),$GUI_CHECKED) zu verwenden um zu sehen ob ein Control markiert ist.

Bei Treeview items können mehrere Statuse als
$GUI_FOCUS, $GUI_EXPAND und $GUI_CHECKED, $GUI_UNCHECKED zurückgegeben werden (nur für Treeview-Controls bei denen der erweiterte Stil TVS_CHECKBOXES verwendet wird. So ist z. B. BitAnd(GUICtrlRead($Item),$GUI_CHECKED) zu verwenden um zu sehen ob ein Control markiert ist.

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

 

Verwandte Funktionen

GUICtrlUpdate..., GUIGetMsg, GUICtrlSetData, GUIEventOptions (Option), GUICtrlCreate..., GUICtrlGetState, GUICtrlSendToDummy, GUICtrlSendMsg

 

Beispiel


#include <GUIConstantsEx.au3>

Opt('MustDeclareVars', 1)

Example()

Func Example()
    Local $menu1, $n1, $n2, $msg, $menustate, $menutext

    GUICreate("Mein GUICtrlRead") ; Erstellt ein GUI-Fenster welches mittig ausgerichtet wird

    $menu1 = GUICtrlCreateMenu("Datei")

    $n1 = GUICtrlCreateList("", 10, 10, -1, 100)
    GUICtrlSetData(-1, "Eintrag1|Eintrag2|Eintrag3", "Eintrag2")

    $n2 = GUICtrlCreateButton("Lesen", 10, 150, 50)
    GUICtrlSetState(-1, $GUI_FOCUS) ; Der Fokus liegt auf diesem Button
   
    GUISetState() ; Zeigt das leere GUI-Fenster
    ; Führt das GUI aus, bis der Dialog geschlossen wird
    Do
        $msg = GUIGetMsg()
        If $msg = $n2 Then
            MsgBox(0, "Ausgewählter Listbox-Eintrag", GUICtrlRead($n1)) ; Zeigt den ausgewählten Listbox-Eintrag an
            $menustate = GUICtrlRead($menu1) ; Rückgabe des Zustandes des Menüpunktes
            $menutext = GUICtrlRead($menu1, 1) ; Rückgabe des Textes des Menüpunktes
            MsgBox(0, "Status und Text des Menüpunktes", "Status:" & $menustate & @LF & "Text:" & $menutext)
        EndIf
    Until $msg = $GUI_EVENT_CLOSE
EndFunc   ;==>Example