Delphi-TTreeView

放几行代码,以免忘记了,其作用:

1.求出指定节点在兄弟结点中的排行老几

2.生成指定节点的的代码形式。

function TForm1.GetGlobeNumCode(inNode: TTreeNode): string;

{功能:产生已存在节点对应的全局编号

入口参数:inCode:TTreeNode节点

返回:全局编号

}

var

nocode:string;

tmp:TTreeNode;

begin

tmp:=inNode;

nocode := Format(\'%.4d\',[GetNumInSameLevel(tmp)]);

while tmp.Level<>0 do

begin

tmp:=tmp.Parent;

nocode := Format(\'%.4d\',[GetNumInSameLevel(tmp)]) + nocode;

end;

Result:=nocode;

end;

function TForm1.GetNumInSameLevel(inNode: TTreeNode): integer;

{功能:产生已存在节点在兄弟节点层中对应的编号,从1起编

入口参数:inCode:TTreeNode节点

返回:同层编号

}

var

i:integer;

tmp:TTreeNode;

begin

i:=0;

tmp:=inNode;

while tmp<>nil do

begin

tmp:=tmp.getPrevSibling;

i:=i+1;

end;

Result:=i;

end;