本例效果圖:
源碼:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls;
type
TForm1 = class(TForm)
TreeView1: TTreeVIEw;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
i: Integer;
{這四個按鈕的功能是一模一樣的}
procedure TForm1.Button1Click(Sender: TObject);
begin
Self.Text := TreeVIEw1.Items.Item[i].Text;
if i < TreeVIEw1.Items.Count-1 then Inc(i) else i := 0;
TreeVIEw1.SetFocus;
TreeView1.Select(TreeVIEw1.Items.Item[i]);
end;
{TreeView1.Items.Item[i] 是默認屬性, 可以簡寫為: TreeVIEw1.Items[i]}
procedure TForm1.Button2Click(Sender: TObject);
begin
Text := TreeVIEw1.Items[i].Text;
if i < TreeVIEw1.Items.Count-1 then Inc(i) else i := 0;
TreeVIEw1.SetFocus;
TreeView1.Select(TreeVIEw1.Items[i]);
end;
{每個元素都是 TTreeNode 類型的}
procedure TForm1.Button3Click(Sender: TObject);
var
node: TTreeNode;
begin
node := TreeVIEw1.Items[i];
Text := node.Text;
if i < TreeVIEw1.Items.Count-1 then Inc(i) else i := 0;
TreeVIEw1.SetFocus;
TreeVIEw1.Select(node);
end;
{盡量使用 TTreeNodes 與 TTreeNode}
procedure TForm1.Button4Click(Sender: TObject);
var
Nodes: TTreeNodes;
node: TTreeNode;
begin
Nodes := TreeVIEw1.Items;
node := Nodes[i];
Text := node.Text;
if i < Nodes.Count-1 then Inc(i) else i := 0;
TreeVIEw1.SetFocus;
TreeVIEw1.Select(node);
end;
end.