Ermittelt das nächste sichtbare Item, welches dem angegebenen Item folgt
#include <GuiTreeView.au3>
_GUICtrlTreeView_GetNextVisible ( $hWnd, $hItem )
$hWnd | Control-ID / Handle des Controls |
$hItem | Handle des Items |
Erfolg: | das Handle zum nächsten sichtbaren Item |
Fehler: | 0 |
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 - - - - - - - -
_GUICtrlTreeView_GetNext, _GUICtrlTreeView_GetPrevVisible
#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