ControlTreeView

From AutoIt Wiki
Revision as of 17:24, 15 August 2013 by Jaberwocky6669 (talk | contribs) (Created page with "==Description== Sends a command to a TreeView32 control. ==Syntax== <syntaxhighlight lang='autoit'> ControlTreeView ( "title", "text", controlID, "command" [, option1 [, opti...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Description

Sends a command to a TreeView32 control.

Syntax

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


Parameters

title The title/hWnd/class of the window to access.
text The text of the window to access.
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.
option2 [optional] Additional parameter required by some commands.

ReturnValue

Depends on 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, Option2
option2 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:


Heading1


> H1SubItem1


> H1SubItem2


> H1SubItem3


> ----> H1S1SubItem1

Heading2 Heading3


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

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

References can also be mixed like "Heading1|#1".


Remarks

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.


Related

ControlCommand


Example

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

Example()

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

	Local $iRoot = GUICtrlCreateTreeViewItem("Root", $iTreeView_1)
	GUICtrlCreateTreeViewItem("Item 1", $iRoot)
	GUICtrlCreateTreeViewItem("Item 2", $iRoot)
	GUICtrlCreateTreeViewItem("Item 3", $iRoot)
	Local $iItem_4 = GUICtrlCreateTreeViewItem("Item 4", $iRoot)
	GUICtrlCreateTreeViewItem("Item 4.1", $iItem_4)
	GUICtrlCreateTreeViewItem("Item 4.2", $iItem_4)
	GUICtrlCreateTreeViewItem("Item 5", $iRoot)

	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
				ExitLoop
		EndSwitch
	WEnd

	GUIDelete($hGUI)
EndFunc   ;==>Example