Funktionreferenz


_GUICtrlTreeView_GetNextVisible

Beschreibung anzeigen in

Ermittelt das nächste sichtbare Item, welches dem angegebenen Item folgt

#include <GuiTreeView.au3>
_GUICtrlTreeView_GetNextVisible ( $hWnd, $hItem )

Parameter

$hWnd Control-ID / Handle des Controls
$hItem Handle des Items

Rückgabewert

Erfolg: das Handle zum nächsten sichtbaren Item
Fehler: 0

Bemerkungen

Das angegebene Item muss sichtbar sein.

Mit dieser Funktion ist es unter anderem möglich alle Items eines Treeviewes durchzugehen.
Dazu muss die Treeview aufgeklappt sein, sonst werden nur die sichtbaren Items einbezogen.
Die Items werden von oben nach unten der Reihe nach durchgegangen. Dies geschieht unabhängig von den unterschiedlichen Ebenen auf der sich die Items befinden.

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

Verwandte Funktionen

_GUICtrlTreeView_GetNext, _GUICtrlTreeView_GetPrevVisible

Beispiel

#include <GUIConstantsEx.au3>
#include <GuiTreeView.au3>
#include <MsgBoxConstants.au3>
#include <WindowsConstants.au3>

Example()

Func Example()
    GUICreate("TreeView: Ermittelt das nächste sichtbare (v" & @AutoItVersion & ")", 500, 300)

    Local $iStyle = BitOR($TVS_EDITLABELS, $TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_SHOWSELALWAYS, $TVS_CHECKBOXES)
    Local $idTreeView = GUICtrlCreateTreeView(2, 2, 396, 268, $iStyle, $WS_EX_CLIENTEDGE)
    GUISetState(@SW_SHOW)

    _GUICtrlTreeView_BeginUpdate($idTreeView)
    Local $aidItem[10]
    For $x = 0 To 3
        $aidItem[$x] = GUICtrlCreateTreeViewItem(StringFormat("[%02d] Neues Item", $x), $idTreeView)
        For $y = 1 To Random(2, 10, 1)
            GUICtrlCreateTreeViewItem(StringFormat("[%02d] Neues Child", $y), $aidItem[$x])
        Next
    Next
    $aidItem[4] = GUICtrlCreateTreeViewItem(StringFormat("[%02d] Neues Item", 4), $idTreeView)
    For $x = 5 To 9
        $aidItem[$x] = GUICtrlCreateTreeViewItem(StringFormat("[%02d] Neues Item", $x), $idTreeView)
        For $y = 1 To Random(2, 10, 1)
            GUICtrlCreateTreeViewItem(StringFormat("[%02d] Neues Child", $y), $aidItem[$x])
        Next
    Next
    _GUICtrlTreeView_EndUpdate($idTreeView)

    Local $hRandItem = Random(0, 8, 1)
    MsgBox($MB_SYSTEMMODAL, "Information", StringFormat("Index %d, nächstes sichtbares: %s", $hRandItem, _GUICtrlTreeView_GetNextVisible($idTreeView, $aidItem[$hRandItem])))
    _GUICtrlTreeView_SelectItem($idTreeView, _GUICtrlTreeView_GetNextVisible($idTreeView, $aidItem[$hRandItem]))

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