Antes de nada preguntar cual es la funcion FindFirstFile que propone Netfali ya que no la encuentro solo encuentro la FindFirst y FindNext.
Basicamente el siguiente algoritmo busca los archivos con extensión '*.ia' que son un .txt para colocarlos dentro de un TTreeView, teniendo en cuenta que desde el directorio original donde se empieza a mirar, que se envia mediante el parametro de entrada 'Cami', pueden haber subdirectorios en 'infinitas' profundidades donde halla archivos *.ia
El algoritmo es el siguiente.
Código Delphi
[-]
procedure TfrmConsultaLliure2.Carregar( Cami: String; Pare: TTreeNode);
var
Filtre: String;
Fit,Dir: TSearchRec;
Nod: TTreeNode;
x: integer;
begin
Filtre := Cami+'*.ia';
if FindFirst(Filtre,faAnyFile,Fit) = 0 then begin
with Ar.Items.AddChild(Pare,Copy(Fit.Name,1,Length(Fit.Name)-3)) do begin
ImageIndex := 1;
SelectedIndex := 1;
end;
while FindNext(Fit) = 0 do
with Ar.Items.AddChild(Pare,Copy(Fit.Name,1,Length(Fit.Name)-3)) do begin
ImageIndex := 1;
SelectedIndex := 1;
end;
end;
FindClose(Fit);
Directori.Root := Cami;
for x:=0 to Directori.Items.Count-1 do begin
Nod := Ar.Items.AddChild(Pare,UpperCase(Directori.Folders[x].Displayname));
Nod.ImageIndex := 0;
Nod.SelectedIndex := 0;
Carregar(Cami+Directori.Folders[x].DisplayName+'\',Nod);
Directori.Root := Cami;
end;
end;