导出TreeView到文本文件

字体大小: 中小 标准 ->行高大小: 标准
下面的过程可以把TreeView导出为文本文件
 procedure ExpandChild(
     const ANode   : TTreeNode;
     const AList   : TStrings;
     const ALevel  : string = ''
     );
 //展开子节点
 var
   i       : Integer;
 begin
   if ANode.Count = 0 then Exit;
   for i := 0 to ANode.Count - 2 do
   begin
     AList.Add(ALevel + '├' +ANode.Item[i].Text);
     ExpandChild(ANode.Item[i],AList,ALevel + '│');
   end;
   AList.Add(ALevel + '└' +ANode.Item[ANode.Count-1].Text);
   ExpandChild(ANode.Item[ANode.Count-1],AList,ALevel + ' ');
 end;

 procedure ExportNode(
     const ANode     : TTreeNode;
     const AFileName : string
     );
 //导出节点
 var
   aList : TStrings;
 begin
   aList :=  TStringList.Create;
   try
     aList.Add(ANode.Text);
     ExpandChild(ANode,aList);
     aList.SaveToFile(AFileName);
   finally
     aList.Free;
   end;
 end;

调用:
 if dlgSave.Execute then
   ExportNode(TreeView1.Selected,dlgSave.FileName);

结果示例:
窗口查看器 - TFrmWindowView
├(空) - TListBox
├(空) - TCoolBar
│├(空) - TToolBar
│├(空) - TToolBar
││├(空) - TPanel
│││├搜索 - TButton
│││└(空) - TEdit
││└搜索文本: - TPanel
│└(空) - TToolBar
│ └捕获 - TPanelEx
├(空) - TStatusBar
├(空) - TTreeView
└(空) - TListBox 

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/68098.html