Welcome

首页 / 软件开发 / Delphi / Delphi TTreeView学习(一)

Delphi TTreeView学习(一)2012-01-11 博客园 云中君需要了解的属性:
AutoExpandproperty AutoExpand: Boolean;

Set AutoExpand to true to cause the selected item to expand and the unselected items to collapse.
BorderStyleproperty BorderStyle: TBorderStyleTBorderStyle;

Set BorderStyle to specify whether the tree view control should be outlined with a single-line border. These are the possible values:

Value Meaning

bsNone No visible border

bsSingle Single-line border
Canvasproperty Canvas: TCanvas;

Use the Canvas property to paint to the canvas from the OnCustomDraw and OnCustomDrawItem event handlers.
ChangeDelayproperty ChangeDelay: Integer;

Use ChangeDelay to get or set the delay, in milliseconds, between when a node is selected and when the OnChange event occurs.

Set the ChangeDelay to 50 milliseconds to emulate the behavior of the tree-view control used in Windows Explorer.
DropTargetproperty DropTarget: TTreeNode;

Read DropTarget to determine whether a node in the tree view is drawn as the target of a drag and drop operation. Set DropTarget when specifying a particular node in the tree view as the drop target of a dragged item.

Note: When DropTarget is set, the application must still handle the actual logic of accepting the dragged object by the indicated node.
HideSelectionproperty HideSelection: Boolean;

Use HideSelection to specify whether the user is given visual feedback about the current selection in the tree view when it does not have focus. If true, the selected node is not visually distinct from other nodes until focus returns to the control. If false, the node always appears selected.
HotTrackproperty HotTrack: Boolean;

Set HotTrack to true to provide visual feedback about which item is under the mouse. Set HotTrack to false to suppress the visual feedback about which item is under the mouse.
Imagesproperty Images: TCustomImageList;

Use Images to provide a customized list of bitmaps that can be displayed to the left of a node’s label. Individual nodes specify the image from this list that should appear by setting their ImageIndex property.
Indentproperty Indent: Integer;

Use Indent to determine how far child nodes are indented from their parent nodes when the parent is expanded.
Items

property Items: TTreeNodes;

Individual nodes in a tree view are TTreeNode objects. These individual nodes can be accessed by using the Items property along with the item"s index into the tree view. For example, to access the second item in the tree view, you could use the following code.

MyTreeNode := TreeView1.Items[1];

When setting this property at design-time in the Object Inspector the Tree View Items Editor appears. Use the New Item and New SubItem buttons to add items to the tree view. Use the Text property to modify what text is displayed in the label of the item.

At run-time nodes can be added and inserted by using the TTreeNodes methods AddChildFirst, AddChild, AddChildObjectFirst, AddChildObject, AddFirst, Add, AddObjectFirst, AddObject, and Insert.

Note: Accessing tree view items by index can be time-intensive, particularly when the tree view contains many items. For optimal performance, try to design your application so that it has as few dependencies on the tree view’s item index as possible.
MultiSelectproperty MultiSelect: Boolean;

Set MultiSelect to specify whether users can select multiple nodes using the Control and Shift keys. A selection style must also be chosen in MultiSelectStyle.
MultiSelectStyletype

TMultiSelectStyles = (msControlSelect, msShiftSelect, msVisibleOnly, msSiblingOnly);

TMultiSelectStyle = set of TMultiSelectStyles;

property MultiSelectStyle: TMultiSelectStyle;

MultiSelectStyle determines how multiple selections are made when MultiSelect is true. MultiSelectStyle must include at least one of the following values.

msControlSelect: Clicking on any node with the Control key pressed toggles the selection of that node.

msShiftSelect: Clicking on any node with the Shift key press selects that node, the last single node selected, and the nodes in between. All other nodes are deselected.

msVisibleOnly Multiple: selections with the Shift key do not include child nodes of collapsed nodes.

msSiblingOnly: Selected nodes are restricted to a single set of siblings.

If msControlSelect or msShiftSelect are in effect, the last singly-selected node becomes the primary selection, referenced by Selections[0]. The primary selection is the anchor for extended selections using the Shift key.
ReadOnlyproperty ReadOnly: Boolean;

Use ReadOnly to specify whether the user can edit the nodes of the tree view. If ReadOnly is true, the user can expand and collapse nodes, but can’t edit their labels. If ReadOnly is false, the user can edit the labels as well. The default value is false.
RightClickSelectproperty RightClickSelect: Boolean;

Use RightClickSelect to allow the Selected property to indicate nodes the user clicks with the right mouse button. If RightClickSelect is true, the value of Selected is the value of the node last clicked with either the right or left mouse button. If RightClickSelect is false, the value of Selected is the node last clicked using the left mouse button.

RightClickSelect affects only the value of the Selected property. It does not cause the tree view to highlight a new node if the node is selected using the right mouse button.

Note: RightClickSelect must be set to true before the user right-clicks the tree view for it to affect the value of the Selected property.
RowSelectproperty RowSelect: Boolean;

Set RowSelect to true to cause the entire row of the selected item to be highlighted.

RowSelect is ignored if ShowLines is true.
Selectedproperty Selected: TTreeNode;

Read Selected to access the selected node of the tree view. If there is no selected node, the value of Selected is nil (Delphi) or NULL (C++).

Set Selected to set a node in the tree view. When a node becomes selected, the tree view"s OnChanging and OnChange events occur. Also, if the specified node is the child of a collapsed parent item, the parent"s list of child items is expanded to reveal the specified node. In this case, the tree view"s OnExpanded and OnExpanding events occur as well.

If the RightClickSelect property is true, the value of Selected is the last node that was clicked in the tree view, even if it was clicked with the right mouse button. This may differ from the node that is highlighted to indicate selection.

If the MultiSelect property is true and the MultiSelectStyle property includes msControlSelect, then Selected returns the last node clicked on, even if that click deselected the node. For a current selection status when MultiSelect is true, refer to the Selections property.
SelectionCountproperty SelectionCount: Cardinal;

SelectionCount returns the number of nodes currently selected.
Selectionsproperty Selections[Index: Integer]: TTreeNode;

Selections returns one of selected nodes. The maximum value of Index is SelectionCount-1. If more than one node is selected, Selections[0] is the primary selected node. This node is the starting point for extended selections if MultiSelectStyle includes msShiftSelect.
ShowButtonsproperty ShowButtons: Boolean;

If ShowButtons is true, a button will appear to the left of each parent item. The user can click the button to expand or collapse the child items as an alternative to double-clicking the parent item.
ShowLinesproperty ShowLines: Boolean;

If ShowLines is true, lines linking child nodes to their parent nodes are displayed. Nodes at the root of the hierarchy are not automatically linked. To link nodes at the root, the ShowRoot property must also be set to true.
ShowRootproperty ShowRoot: Boolean;

To show lines connecting top-level nodes to a single root, set the tree view"s ShowRoot and ShowLines properties to true.
SortTypeproperty SortType: TSortType;

Once a tree view is sorted, the original hierarchy is lost. That is, setting the SortType back to stNone will not restore the original order of items. These are the possible values:

stNone: No sorting is done.

stData: The items are sorted when the Data object or SortType is changed.

stText: The items are sorted when the Caption or SortType is changed.

stBoth: The items are sorted when either the Data object, the Caption or SortType is changed

Optionally, the OnCompare event can be hooked to handle comparisons.
StateImagesproperty StateImages: TCustomImageList;

Use StateImages to provide a set of bitmaps that reflect the state of tree view nodes. The state image appears as an additional image to the left of the item"s icon.
ToolTipsproperty ToolTips: Boolean;

Set ToolTips to true to specify that items in the tree view control have tool tips (Help Hints).

Specify the ToolTip text in an OnHint event handler using the Hint property.
TopItemproperty TopItem: TTreeNode;

When TopItem is changed, the tree view scrolls vertically so that the specified node is topmost in the list view.