Sign in Join
FPDoc Onlineexperiment

TCustomTreeView.Select procedure

Member of TCustomTreeViewpublicIn unit ComCtrls

Makes the specified node(s) become selected in the control.

Declaration

pascal
procedure Select(Node: TTreeNode; ShiftState: TShiftState=[])
procedure Select
 (const Nodes: Array of TTreeNode = class(TPersistent)
private
 FOwner: TTreeNodes;
 FCapacity: Integer;
 FCount: Integer;
 FData: Pointer;
 FHeight: Integer;
 FNodeEffect: TGraphicsDrawEffect;
 FImageIndex: TImageIndex;
 FIndex: Integer;
 FItems: TTreeNodeArray;
 FNextBrother: TTreeNode;
 FNextMultiSelected: TTreeNode;
 FOverlayIndex: Integer;
 FParent: TTreeNode;
 FPrevBrother: TTreeNode;
 FPrevMultiSelected: TTreeNode;
 FSelectedIndex: Integer;
 FStateIndex: Integer;
 FStates: TNodeStates;
 FSubTreeCount: Integer;
 FText: string;
 FTop: Integer;
 function ParentsExpandedVisible(aEnabledOnly: Boolean=False): Boolean;
 procedure BindToMultiSelected;
 function CompareCount(CompareMe: Integer): Boolean;
 function DoCanExpand(ExpandIt: Boolean): Boolean;
 procedure DoExpand(ExpandIt: Boolean);
 procedure ExpandItem(ExpandIt: Boolean; Recurse: Boolean);
 function GetAbsoluteIndex: Integer;
 function GetDeleting: Boolean;
 function GetCount: Integer;
 function GetCut: Boolean;
 function GetDropTarget: Boolean;
 function GetExpanded: Boolean;
 function GetFocused: Boolean;
 function GetHasChildren: Boolean;
 function GetHeight: Integer;
 function GetIndex: Integer;
 function GetItems(AnIndex: Integer): TTreeNode;
 function GetLevel: Integer;
 function GetMultiSelected: Boolean;
 function GetSelected: Boolean;
 function GetState(NodeState: TNodeState): Boolean;
 function GetTreeNodes: TTreeNodes;
 function GetTreeView: TCustomTreeView;
 function GetTop: Integer;
 function GetVisible: Boolean;
 function GetEnabled: Boolean;
 function HasStates(NodeStates: TNodeStates): Boolean;
 procedure InternalMove(ANode: TTreeNode; AddMode: TAddMode);
 function IsEqual(Node: TTreeNode): Boolean;
 function IsNodeVisible: Boolean;
 function IsNodeHeightFullVisible: Boolean;
 procedure ReadData(Stream: TStream; StreamVersion: Integer);
 procedure ReadDelphiData(Stream: TStream; Info: PDelphiNodeInfo);
 procedure ReadDelphiNodeData(Stream: TStream; ASignature: Byte);
 procedure SetCut(AValue: Boolean);
 procedure SetData(AValue: Pointer);
 procedure SetDropTarget(AValue: Boolean);
 procedure SetExpanded(AValue: Boolean);
 procedure SetFocused(AValue: Boolean);
 procedure SetHasChildren(AValue: Boolean);
 procedure SetHeight(AValue: Integer);
 procedure SetImageEffect(AValue: TGraphicsDrawEffect);
 procedure SetImageIndex(AValue: TImageIndex);
 procedure SetIndex(const AValue: Integer);
 procedure SetItems(AnIndex: Integer; AValue: TTreeNode);
 procedure SetMultiSelected(const AValue: Boolean);
 procedure SetOverlayIndex(AValue: Integer);
 procedure SetSelected(AValue: Boolean);
 procedure SetSelectedIndex(AValue: Integer);
 procedure SetStateIndex(AValue: Integer);
 procedure SetText(const S: string);
 procedure SetVisible(const AValue: Boolean);
 procedure SetEnabled(const AValue: Boolean);
 procedure Unbind;
 procedure UnbindFromMultiSelected;
 procedure WriteData(Stream: TStream; StreamVersion: Integer);
 procedure WriteDelphiData(Stream: TStream; Info: PDelphiNodeInfo);
protected
 procedure Changed(ChangeReason: TTreeNodeChangeReason);
 function GetOwner: TPersistent; override;
public
 constructor Create(AnOwner: TTreeNodes); virtual;
 destructor Destroy; override;
 function AlphaSort: Boolean;
 function Bottom: Integer;
 function BottomExpanded: Integer;
 function CustomSort(SortProc: TTreeNodeCompare): Boolean;
 function DefaultTreeViewSort(Node1: TTreeNode; Node2: TTreeNode)
: Integer;
 function DisplayExpandSignLeft: Integer;
 function DisplayExpandSignRect: TRect;
 function DisplayExpandSignRight: Integer;
 function DisplayIconLeft: Integer;
 function DisplayRect(TextOnly: Boolean): TRect;
 function DisplayStateIconLeft: Integer;
 function DisplayTextLeft: Integer;
 function DisplayTextRight: Integer;
 function EditText: Boolean;
 function FindNode(const NodeText: string): TTreeNode;
 function GetFirstChild: TTreeNode;
 function GetFirstSibling: TTreeNode;
 function GetFirstVisibleChild(aEnabledOnly: Boolean=False): TTreeNode;
 function GetHandle: TLCLHandle;
 function GetLastChild: TTreeNode;
 function GetLastSibling: TTreeNode;
 function GetLastSubChild: TTreeNode;
 function GetLastVisibleChild(aEnabledOnly: Boolean=False): TTreeNode;
 function GetNext: TTreeNode;
 function GetNextChild(AValue: TTreeNode): TTreeNode;
 function GetNextExpanded(aEnabledOnly: Boolean=False): TTreeNode;
 function GetNextMultiSelected: TTreeNode;
 function GetNextSibling: TTreeNode;
 function GetNextSkipChildren: TTreeNode;
 function GetNextVisible(aEnabledOnly: Boolean=False): TTreeNode;
 function GetNextVisibleSibling(aEnabledOnly: Boolean=False): TTreeNode;
 function GetParentNodeOfAbsoluteLevel(TheAbsoluteLevel: Integer)
: TTreeNode;
 function GetPrev: TTreeNode;
 function GetPrevChild(AValue: TTreeNode): TTreeNode;
 function GetPrevExpanded(aEnabledOnly: Boolean=False): TTreeNode;
 function GetPrevMultiSelected: TTreeNode;
 function GetPrevSibling: TTreeNode;
 function GetPrevVisible(aEnabledOnly: Boolean=False): TTreeNode;
 function GetPrevVisibleSibling(aEnabledOnly: Boolean=False): TTreeNode;
 function GetTextPath: string;
 function HasAsParent(AValue: TTreeNode): Boolean;
 function IndexOf(AValue: TTreeNode): Integer;
 function IndexOfText(const NodeText: string): Integer;
 procedure Assign(Source: TPersistent); override;
 procedure Collapse(Recurse: Boolean);
 procedure ConsistencyCheck;
 procedure Delete;
 procedure DeleteChildren;
 procedure EndEdit(Cancel: Boolean);
 procedure Expand(Recurse: Boolean);
 procedure ExpandParents;
 procedure FreeAllNodeData;
 procedure MakeVisible;
 procedure MoveTo(Destination: TTreeNode; Mode: TNodeAttachMode)
 ; virtual;
 procedure MultiSelectGroup;
 procedure Update;
 procedure WriteDebugReport(const Prefix: string; Recurse: Boolean);
 property AbsoluteIndex: Integer;
 property Count: Integer;
 property Cut: Boolean;
 property Data: Pointer;
 property Deleting: Boolean;
 property DropTarget: Boolean;
 property Expanded: Boolean;
 property Focused: Boolean;
 property Handle: TLCLHandle;
 property HasChildren: Boolean;
 property Height: Integer;
 property ImageIndex: TImageIndex;
 property Index: Integer;
 property IsFullHeightVisible: Boolean;
 property IsVisible: Boolean;
 property Items[ItemIndex: Integer]: TTreeNode; default;
 property Level: Integer;
 property MultiSelected: Boolean;
 property NodeEffect: TGraphicsDrawEffect;
 property OverlayIndex: Integer;
 property Owner: TTreeNodes;
 property Parent: TTreeNode;
 property Selected: Boolean;
 property SelectedIndex: Integer;
 property StateIndex: Integer;
 property States: TNodeStates;
 property SubTreeCount: Integer;
 property Text: string;
 property Top: Integer;
 property TreeNodes: TTreeNodes;
 property TreeView: TCustomTreeView;
 property Visible: Boolean;
 property Enabled: Boolean;
end
)
 ; virtual
procedure Select(Nodes: TList); virtual

Arguments

Node

Tree node assigned to Selected in the method.

ShiftState

Shift state for the selection; Shift assumes multi-selection is enabled.

Nodes

Array or TList with TTreeNode instances to add to the Selections in the control; assumes multi-select is enabled.

Description

Select is an overloaded method used to make a node, array of nodes, or list of nodes become selected in the tree view control.

The overloaded variant with a TShiftState value allows the specified node to be added to the existing multi-selection when Shift contains ssCtrl. If Shift does not include ssCtrl, ClearSelections is called prior to storing the node in Selected.

The variants which accept either an array or a list of nodes always call ClearSelections to reset the selected state for multi-selected nodes. The first TTreeNode instance in either is stored in Selected. When tvoAllowMultiSelect has been included in Options, the Selected property in each of the tree nodes is set to True.

Use ClearSelections to reset the state for any selected nodes on the tree view control.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.