首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi TTreeView 學習 (二):TTreeNodes 集合操作全指南

     編輯:Delphi

核心屬性

  • Count:節點總數
  • Handle:TreeView 窗口句柄
  • Item[Index]:按絕對索引訪問節點 (默認屬性)
  • Owner:所屬 TCustomTreeView

添加節點方法對比

方法位置參數返回
Add(Node, S)Node 同級末尾文本新節點
AddChild(Node, S)Node 子列表末尾文本新節點
AddChildFirst(Node, S)Node 子列表首位文本新節點
AddChildObject(Node, S, Ptr)子列表末尾 + 數據文本, Pointer新節點
AddChildObjectFirst(Node, S, Ptr)子列表首位 + 數據文本, Pointer新節點
AddFirst(Node, S)Node 同級首位文本新節點
AddObject(Node, S, Ptr)同級末尾 + 數據文本, Pointer新節點
AddObjectFirst(Node, S, Ptr)同級首位 + 數據文本, Pointer新節點
Insert(Node, S)Node 之前 (同級)文本新節點
InsertObject(Node, S, Ptr)Node 之前 + 數據文本, Pointer新節點
AddNode(Node, Relative, S, Ptr, Mode)通用添加 (Mode 指定關係)節點/文本/數據/模式新節點

批量操作與性能

TreeView1.Items.BeginUpdate;
try
  // 大量 Add/Insert/Delete
finally
  TreeView1.Items.EndUpdate; // 一次重繪
end;

排序方法

  • AlphaSort(ARecurse):按 Caption 排序,可遞歸。
  • CustomSort(SortProc, Data, ARecurse):自定義比較函數 (TTVCompare),Data 傳遞用戶參數。

查找與遍歷

  • GetFirstNode:根節點第一個。
  • GetNode(ItemId):由 Windows ItemId 獲取節點。
  • Clear:刪除所有節點。

完整添加範例

var
  Root, Child, GrandChild: TTreeNode;
begin
  TreeView1.Items.BeginUpdate;
  try
    Root := TreeView1.Items.Add(nil, '根節點');
    Child := TreeView1.Items.AddChild(Root, '子節點1');
    TreeView1.Items.AddChild(Child, '孫節點1');
    TreeView1.Items.AddChild(Child, '孫節點2');
    TreeView1.Items.AddChildObject(Root, '帶數據子節點', Pointer(123));
  finally
    TreeView1.Items.EndUpdate;
  end;
end;
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved