TreeViewの使い方
ツリービューコントロールを使うとWindows Explorerのように項目のツリー表示を行うアプリケーションを作ることができます。ツリービューにイメージを表示するときはイメージリストコントロールを使います。
ツリービューに新しいツリーノードを追加するには
TTreeViewのItemsプロパティはTTreeNode型で、Addメソッドによってツリーノードを追加できます。AddChindメソッドはAddによって追加したノードに子ノードを追加する時使用します。
例
var node1, node: TTreeNode; begin With TreeView1 do begin Align := alClient; node := Items.Add(nil, 'node0'); node1 := Items.AddChild(node, 'node01'); node1.ImageIndex := 1; node1 := Items.AddChild(node, 'node02'); node1.ImageIndex := 1; node1 := Items.AddChild(node, 'node03'); node1.ImageIndex := 1; node := Items.Add(nil, 'node1'); node.ImageIndex := 0; node1 := Items.AddChild(node, 'node11'); node1.ImageIndex := 1; node1 := Items.AddChild(node, 'node12'); node1.ImageIndex := 1; end; end;
ノードにイメージを表示するには
まずオブジェクトインスペクタで、ツリービューのImagesプロパティにイメージリストコントロールを設定します。上の例のようにノードのImageIndexプロパティにイメージリストコントロールにあらかじめ追加してあるイメージ番号を代入すると、そのイメージがノードに表示されます。イメージリストコントロールにイメージを追加する方法はここをクリックしてください。
ノードを展開したり縮小したりするには
ノードをすべて展開するにはFullExpandメソッドを使用します。逆に縮小するにはFullCollapseメソッドを使用します。
ノードをファイルから読み込んで設定するには
LoadFromFileメソッドを使用するとノードをファイルから読み込んだ情報によって初期化できます。
例
var i, n: Integer; begin TreeView1.LoadFromFile(filename); i := 0; n := TreeView1.Items.Count; while i < n do begin if TreeView1.Items[i].Level> 0 then TreeView1.Items[i].ImageIndex := 1; Inc(i); end; end;
データファイルの例
node0 node01 node02 node03 node1 node11 node12
現在選択されているノードを得るには
OnClickイベントなどでSelectedプロパティを参照し、現在選択されているノードを得ることができます。
例
StatusBar1.Panels[0].Text := TreeView1.Selected.Text;