有NOde.getprevvisible来探测,可以实现你的要求,在你的根节点设一个指针为特别的东西,找到即结束,下面的程序,前提是你的程序创建的节点的data必须有整型值,根节点为0:
procedure Tform1.TreeView1change;
var
MyNode:TTreeNode;
P:^integer;
k:integer;
begin
K:=1;
MyNode:=TreeView1.Selected;
if MyNode=nil then exit;
p:=MyNode.Data;
While p^<>0 then begin
MyNode:=MyNode.getprevvisible;
p:=MyNode.data;
end;
showmessage(intToStr(k));
end;
其中的k值为你的要求的行数
procedure Tform1.TreeView1change;
var
MyNode:TTreeNode;
P:^integer;
k:integer;
begin
K:=1;
MyNode:=TreeView1.Selected;
if MyNode=nil then exit;
p:=MyNode.Data;
While p^<>0 then begin
MyNode:=MyNode.getprevvisible;
p:=MyNode.data;
end;
showmessage(intToStr(k));
end;
其中的k值为你的要求的行数
祝好运.