Function Reference


Sends a command to a TreeView32 control.

ControlTreeView ( "title", "text", controlID, "command" [, option1] )


title The title/hWnd/class of the window to access. See Title special definition.
text The text of the window to access. See Text special definition.
controlID The control to interact with. See Controls.
command The command to send to the control (see below).
option1 [optional] Additional parameter required by some commands.

Return Value

Return depends on the command as table below shows. In case of an error (such as an invalid command or window/control could not be found) then @error is set to 1.

Command, Option1 Operation
"Check", "item" Checks an item (if the item supports it).
"Collapse", "item" Collapses an item to hide its children.
"Exists", "item" Returns 1 if an item exists, otherwise 0.
"Expand", "item" Expands an item to show its children.
"GetItemCount", "item" Returns the number of children for a selected item.
"GetSelected" [, UseIndex] Returns the item reference of the current selection using the text reference of the item (or index reference if UseIndex is set to 1).
"GetText", "item" Returns the text of an item.
"IsChecked" Returns the state of an item. 1:checked, 0:unchecked, -1:not a checkbox.
"Select", "item" Selects an item.
"Uncheck", "item" Unchecks an item (if the item supports it).

The "item" parameter is a string-based parameter that is used to reference a particular treeview item using a combination of text and indices. Indices are 0-based. For example:

----> H1SubItem1
----> H1SubItem2
----> H1SubItem3
----> ----> H1S1SubItem1

Each "level" is separated by |. An index is preceded with #. Examples:

Item Item Reference
Heading2 "Heading2" or "#1"
H1SubItem2 "Heading1|H1SubItem2" or "#0|#1"
H1S1SubItem1 "Heading1|H1SubItem3|H1S1SubItem1" or "#0|#2|#0"


As AutoIt is a 32-bit application some commands are not available when referencing a 64-bit application as Explorer when running on 64-bit Windows.




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


Func Example()
    Local $hGUI = GUICreate("ControlTreeView Example", 212, 212)
    Local $idTreeView_1 = GUICtrlCreateTreeView(6, 6, 200, 160, BitOR($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_CHECKBOXES), $WS_EX_CLIENTEDGE)
    Local $hTreeView_1 = ControlGetHandle($hGUI, "", $idTreeView_1)

    Local $idRoot = GUICtrlCreateTreeViewItem("Root", $idTreeView_1)
    GUICtrlCreateTreeViewItem("Item 1", $idRoot)
    GUICtrlCreateTreeViewItem("Item 2", $idRoot)
    GUICtrlCreateTreeViewItem("Item 3", $idRoot)
    Local $idItem_4 = GUICtrlCreateTreeViewItem("Item 4", $idRoot)
    GUICtrlCreateTreeViewItem("Item 4.1", $idItem_4)
    GUICtrlCreateTreeViewItem("Item 4.2", $idItem_4)
    GUICtrlCreateTreeViewItem("Item 5", $idRoot)

    GUISetState(@SW_SHOW, $hGUI)

    ControlTreeView($hGUI, "", $hTreeView_1, "Expand", "Root")

    ControlTreeView($hGUI, "", $hTreeView_1, "Exists", "Root|Item 4")
    ControlTreeView($hGUI, "", $hTreeView_1, "Check", "Root|Item 4")
    ControlTreeView($hGUI, "", $hTreeView_1, "Select", "Root|Item 4")
    ControlTreeView($hGUI, "", $hTreeView_1, "Expand", "Root|Item 4")

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE

EndFunc   ;==>Example