Delphi XE2 之 FireMonkey 入門(44) – 控制項基礎: TTreeView、TTreeViewItem

來源:互聯網
上載者:User
TScrollBox -> TCustomTreeView -> TTreeView 子項類型是 TTreeViewItem.

測試, 先在表單上放一個 TTreeView, 並需要它的 OnChange 事件:

unit Unit1;interfaceuses  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 := 0 to 19 do      with TTreeViewItem.Create(Self) do      begin        Parent := item;        Text := item.Text + '_' + IntToStr(i+1);        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;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.