Delphi Vcl到Firemonkey .TopItem解决方法

时间:2014-04-29 02:07:03

标签: delphi firemonkey vcl

我是delphi和firemonkey的新手。到目前为止,我通过挑选各种例子来解释我的理解。我应该如何将这段代码从Vcl转换为Firemonkey?问题是它使用.TopItem,我一直在寻找一个firemonkey .TopItem等效或一个常用的解决方法,但它没有找到任何东西。非常感谢任何帮助。

    procedure Tree2XML(tree: TTreeView);
    var
      tn : TTreeNode;
      XMLDoc : TXMLDocument;
      iNode : IXMLNode;

      procedure ProcessTreeItem(tn : TTreeNode; iNode : IXMLNode);
      var
        cNode : IXMLNode;
      begin
        if (tn = nil) then Exit;
        cNode := iNode.AddChild('item');
        cNode.Attributes['text'] := tn.Text;
        cNode.Attributes['imageIndex'] := tn.ImageIndex;
        cNode.Attributes['stateIndex'] := tn.StateIndex;

        //child nodes
        tn := tn.getFirstChild;
        while tn <> nil do
        begin
          ProcessTreeItem(tn, cNode);
          tn := tn.getNextSibling;
        end;
      end; (*ProcessTreeItem*)
    begin
      XMLDoc := TXMLDocument.Create(nil);
      XMLDoc.Active := True;
      iNode := XMLDoc.AddChild('tree2xml');
      iNode.Attributes['app'] := ParamStr(0);

      tn := tree.TopItem;
      while tn <> nil do
      begin
        ProcessTreeItem (tn, iNode);

        tn := tn.getNextSibling;
      end;

      XMLDoc.SaveToFile(ChangeFileExt(ParamStr(0),'.XML'));

    end; (* Tree2XML *)

0 个答案:

没有答案