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

Delphi TTreeView 學習 (一):控件屬性、方法與事件全覽

     編輯:Delphi

核心屬性分類

外觀與行為

  • AutoExpand:單擊自動展開/折疊其他
  • BorderStyle:bsNone/bsSingle
  • HideSelection:失焦時隱藏選中
  • HotTrack:滑過熱點效果
  • Indent:縮進像素
  • RowSelect:整行高亮 (與 ShowLines 互斥)
  • ShowButtons:+/- 按鈕
  • ShowLines:連接線
  • ShowRoot:根節點連接線
  • ToolTips:提示信息

選擇模式

  • MultiSelect:多選
  • MultiSelectStyle:msControlSelect、msShiftSelect、msVisibleOnly、msSiblingOnly
  • RightClickSelect:右鍵選中

圖標與狀態

  • Images:正常圖標列表
  • StateImages:狀態圖標 (複選框等)

排序

  • SortType:stNone/stData/stText/stBoth
  • OnCompare:自定義比較

數據綁定

  • Items:TTreeNodes 集合
  • Selected:當前選中節點
  • SelectionCount、Selections[]:多選支持

核心方法

方法說明
AlphaSort(ARecurse)全樹排序 (默認遞歸)
CustomSort(SortProc, Data, ARecurse)自定義排序
FullCollapse / FullExpand全部折疊/展開
GetNodeAt(X, Y)坐標下的節點
GetHitTestInfoAt(X, Y)點擊測試 (OnItem/OnButton/OnLabel...)
LoadFromFile / LoadFromStream從文件/流加載 (僅文本)
SaveToFile / SaveToStream保存到文件/流
Select(Nodes/Node, ShiftState)編程選中 (支持 Shift/Ctrl/Right)
Subselect(Node, Validate)切換多選狀態
ClearSelection(KeepPrimary)清除選中
IsEditing是否正在編輯標籤
FindNextToSelect尋找下一個可選節點

關鍵事件

  • OnChange / OnChanging:選中變更前/後
  • OnExpanding / OnExpanded:展開前/後 OnCollapsing / OnCollapsed:折疊前/後 OnEditing / OnEdited:標籤編輯前/後 OnCompare:排序比較 OnCustomDraw / OnCustomDrawItem:自繪 OnGetImageIndex / OnGetSelectedIndex:動態圖標 OnDragOver / OnDragDrop:拖放

文件格式說明

SaveToFile 生成純文本,每行一節點,縮進表示層級:

根節點
 子節點1
  孫節點1
 子節點2

不保存 Data、ImageIndex 等屬性,需自行序列化。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved