Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem
2024-08-24 21:34:18
TScrollBox -> TCustomTreeView -> TTreeView 子项类型是 TTreeViewItem.
成员概览:
测试, 先在窗体上放一个 TTreeView, 并需要它的 OnChange 事件:
unit Unit1; interface uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Layouts, FMX.TreeView; type
TForm1 = class(TForm)
TreeView1: TTreeView;
procedure FormCreate(Sender: TObject);
procedure TreeView1Change(Sender: TObject);
end; var
Form1: TForm1; implementation {$R *.fmx} procedure TForm1.FormCreate(Sender: TObject);
var
item: TTreeViewItem;
i: Integer;
begin
TreeView1.Align := TAlignLayout.alLeft;
TreeView1.UseSmallScrollBars := True;
TreeView1.AlternatingRowBackground := True;
TreeView1.ShowCheckboxes := True; item := TTreeViewItem.Create(Self);
item.Parent := TreeView1;
item.Text := 'Item1'; item := TTreeViewItem.Create(Self);
item.Parent := TreeView1;
item.Text := 'Item2';
for i := to do
with TTreeViewItem.Create(Self) do
begin
Parent := item;
Text := item.Text + '_' + IntToStr(i+);
IsChecked := Odd(i);
end;
item.IsExpanded := True; item := TTreeViewItem.Create(Self);
item.Parent := TreeView1;
item.Text := 'Item3';
end; procedure TForm1.TreeView1Change(Sender: TObject);
var
item: TTreeViewItem;
begin
item := TreeView1.Selected;
if item <> nil then
begin
ShowMessageFmt(
'TreeView1.GlobalCount: %d'#13#10 +
'TreeView1.Count: %d'#13#10 +
'TTreeViewItem.Count: %d'#13#10 +
'TTreeViewItem.Level: %d'#13#10 +
'TTreeViewItem.GlobalIndex: %d'#13#10 +
'TTreeViewItem.Index: %d'#13#10
, [TreeView1.GlobalCount, TreeView1.Count, item.Count, item.Level, item.GlobalIndex, item.Index]
);
end;
end; end.
成员概览:
{ TCustomTreeView }
public
constructor Create(...); override; //
destructor Destroy; override; //
procedure EndUpdate; override; //结束更新
procedure Clear; //清空
procedure ExpandAll; //全部展开
procedure CollapseAll; //全部关闭
function ItemByText(...): TTreeViewItem; //根据标题获取项
function ItemByPoint(...): TTreeViewItem; //根据位置获取项
function ItemByIndex(...): TTreeViewItem; //根据索引获取项
function ItemByGlobalIndex(...): TTreeViewItem; //根据总索引获取项
procedure AddObject(...); override; //
procedure RemoveObject(...); override; //
procedure MouseDown(...); override; //
procedure MouseMove(...); override; //
procedure MouseUp(...); override; //
procedure KeyDown(...); override; //
procedure KeyUp(...); override; //
procedure DragOver(...); override; //
procedure DragDrop(...); override; //
property Count: Integer ...; //第一层项总数
property GlobalCount: Integer ...; //项总数
property CountExpanded: Integer ...; //???
property Selected: TTreeViewItem ...; //当前选择的项
property Items[Index: Integer]: TTreeViewItem ...; //索引到项
property AllowDrag: Boolean ...; //是否允许拖拽
property AlternatingRowBackground: Boolean ...; //是否使用交替背景
property ItemHeight: Single ...; //项高
property HideSelectionUnfocused: Boolean ...; //是否在失去焦点时隐藏选择
property MultiSelect: Boolean ...; //能否多选
property ShowCheckboxes: Boolean ...; //是否显示多选框
property Sorted: Boolean ...; //
property OnChange: TNotifyEvent ...; //
property OnChangeCheck: TNotifyEvent ...; //
property OnCompare: TOnCompareTreeViewItemEvent ...; //
property OnDragChange: TOnTreeViewDragChange ...; //
end; { TTreeView }
published
property StyleLookup; //
property CanFocus default True; //
property DisableFocusEffect; //
property TabOrder; //
property AllowDrag default False; //
property AlternatingRowBackground default False; //
property ItemHeight; //
property HideSelectionUnfocused default False; //
property MultiSelect default False; //
property ShowCheckboxes default False; //
property Sorted default False; //
property OnChange; //
property OnChangeCheck; //
property OnCompare; //
property OnDragChange; //
end; { TTreeViewItem }
public
constructor Create(...); override; //
procedure Paint; override; //
procedure AddObject(...); override; //
procedure RemoveObject(...); override; //
procedure Sort(...); override; //
function ItemByPoint(...): TTreeViewItem; //根据位置获取项
function ItemByIndex(...): TTreeViewItem; //根据索引获取项
property Count: Integer ...; //子项数
property GlobalIndex: Integer ...; //全局索引
function TreeView: TCustomTreeView; //拥有它的 TreeView
function Level: Integer; //在第几层
function ParentItem: TTreeViewItem; //父项
property Items[Index: Integer]: TTreeViewItem ...; //索引到子项
published
property IsChecked: Boolean ...; //是否选中复选框
property IsExpanded: Boolean ...; //是否展开
property IsSelected: Boolean ...; //是否选择
property AutoTranslate default True; //是否自动接收语言翻译
property Font; //
property StyleLookup; //
property Text; //
property TextAlign default TTextAlign.taLeading; //
end;
最新文章
- JS第一天基础总结
- vmware的安装
- javaScript入门第一天
- POJ 3140 Contestants Division
- shell中的函数、数组
- python 代码格式化工具:YAPF
- SQL_查找用户的表属于哪个表空间
- MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB数据
- 关于Apache,Mysql,PHP之间的关系
- Android项目文件结构
- ELK安装
- freemarker写select组件报错总结(七)
- 题目1032:ZOJ
- js判断iPhone XS、iPhone XS Max、iPhone XR
- 跑的飞快的dinic
- python常见用法
- go语言path包和filepath包的学习与使用
- 关于Puppet不得不说的故事
- [CodeForces]CodeForces 13D 几何 思维
- 如何将数据转换libsvm格式文件