放几行代码,以免忘记了,其作用:
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;
请发表评论