Funktionsreferenz

ControlTreeView

Sendet einen Befehl an ein TreeView32 Control.

ControlTreeView ( "title", "text", ControlID, "command" [, option1 [, option2]] )

 

Parameter

title Der Titel des Fensters, auf das zugegriffen werden soll.
text Der Text des Fensters, auf das zugegriffen werden soll.
ControlID Das Control, dass gesteuert werden soll. Siehe Controls.
command Der zu sendende Befehl an das Control (siehe unten).
option1 [optional] Zusätzlicher Parameter, welcher bei manchen Befehl benötigt wird.
option2 [optional] Zusätzlicher Parameter, welcher bei manchen Befehl benötigt wird.

 

Rückgabewert

Abhängig vom Befehl, welche in der unteren Tabelle stehen. Im Falle eines Fehlers (wie z. B. ein ungültiger Befehl oder falls ein Fenster / Control nicht gefunden werden konnte), wird @error auf 1 gesetzt.
Command, Option1, Option2 Operation
"Check", "item" Prüft ein Item (falls das Item dies unterstützt).
"Collapse", "item" klappt ein Item zu, um dessen Childs zu verstecken.
"Exists", "item" Gibt 1 zurück, falls ein Item existiert, andererseits 0.
"Expand", "item" klappt ein Item auf, um dessen Childs zu sehen.
"GetItemCount", "item" Gibt die Anzahl von Childs des markierten Items zurück.
"GetSelected" [, UseIndex] Gibt die Itemreferenz der aktuellen Markierung zurück. Es wird die Textreferenz des Items verwendet (oder Indexreferenz, falls UseIndex auf 1 gesetzt ist).
"GetText", "item" Gibt den Text eines Items zurück.
"IsChecked" Gibt den Status eines Items zurück. 1:markiert, 0:nicht markiert, -1:keine Checkbox.
"Select", "item" Wählt ein Item aus.
"Uncheck", "item" Hebt die Markierung eines Items auf (falls das Item dies unterstützt).
Der "item" Parameter ist ein String-basierender Parameter, welcher verwendet wird, um die Referenz zu einem teilweise übereinstimmenden Treeview zu erhalten (nutzt eine Kombination von Text und Indexe). Indizes sind 0-basierend. zum Beispiel:
Überschrift1
----> H1SubItem1
----> H1SubItem2
----> H1SubItem3
----> ----> H1S1SubItem1
Überschrift2
Überschrift3
Jedes "Level" wird durch ein | getrennt. Einem Index wird ein # vorangestellt. Beispiele:
Item Itemreferenz
Überschrift2 "Überschrift2" oder "#1"
H1SubItem2 "Überschrift1|H1SubItem2" oder "#0|#1"
H1S1SubItem1 "Überschrift1|H1SubItem3|H1S1SubItem1" oder "#0|#2|#0"
Referenzen können auch gemischt werden. Zum Beispiel "Überschrift1|#1".

 

Bemerkungen

Da AutoIt eine 32-bit Anwendung ist, ist es möglich, dass manche Befehle nicht verfügbar sind, wenn eine 64-bit Anwendung, beispielsweise auf einem 64-bit Windows, angesprochen wird.

 

Verwandte Funktionen

ControlCommand

 

Beispiel


; Beispiel 1

; Author:         Zedna

#include <GUIConstantsEx.au3>
#include <TreeviewConstants.au3>
#include <WindowsConstants.au3>

$gui = GUICreate("ControlTreeview test", 212, 212)
$treeview = GUICtrlCreateTreeView(6, 6, 200, 160, BitOR($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_CHECKBOXES), $WS_EX_CLIENTEDGE)
$h_tree = ControlGetHandle($gui, "", $treeview)

$root = GUICtrlCreateTreeViewItem("Root", $treeview)
$item1 = GUICtrlCreateTreeViewItem("Item 1", $root)
$item2 = GUICtrlCreateTreeViewItem("Item 2", $root)
$item3 = GUICtrlCreateTreeViewItem("Item 3", $root)
$item4 = GUICtrlCreateTreeViewItem("Item 4", $root)
$item41 = GUICtrlCreateTreeViewItem("Item 41", $item4)
$item42 = GUICtrlCreateTreeViewItem("Item 42", $item4)
$item5 = GUICtrlCreateTreeViewItem("Item 5", $root)

GUISetState(@SW_SHOW)

; Ein paar Beispiele
ControlTreeView($gui, "", $h_tree, "Expand", "Root")

ControlTreeView($gui, "", $h_tree, "Exists", "Root|Item 4")
ControlTreeView($gui, "", $h_tree, "Check", "Root|Item 4")
ControlTreeView($gui, "", $h_tree, "Select", "Root|Item 4")
ControlTreeView($gui, "", $h_tree, "Expand", "Root|Item 4")

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            ExitLoop
    EndSelect
WEnd



; Beispiel 2


Opt("WinTitleMatchMode", 2)

; Bei den Sounds "Windows-Abmeldung" auswählen

$titel = "Eigenschaften von Sounds und Audiogeräte"

; Sounds und Audiogeräte starten
Run("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1")
WinWait($titel)

;"Windows-Abmeldung" auswählen
$Eintragsname = "Windows-Abmeldung"
$winhandle = WinGetHandle($titel)
$treehandle = ControlGetHandle($winhandle, '', "SysTreeView321")
ControlFocus($winhandle, '', $treehandle)
ControlTreeView($winhandle, "", 6682, "Select", "Windows|" & $Eintragsname)