Hallöchen,
ich kann mir vorstellen, dass das hier schon 100 mal gefragt wurde, aber mit einschlägigen Suchbegriffen bin ich nicht weit gekommen
Ich möchte einfach nur gerne, dass in einem TTreeView die Verzeichnisse eines Laufwerks aufgelistet werden. Gerne dürfen die Laufwerke auch die ersten Knotenpunkte im TreeView sein. Nachdem ein Ordner angeklickt wurde, sollte dann in einem Listview (oder Listbox?) die Dateien angezeigt werden, die in diesem Ordner liegen. *Rauft sich die Haare* Das kann doch so schwer nicht sein
Ich habe schon was gefunden (
Link), aber das dauert ziemlich lange und ich möchte keine 60sek warten, bis meine 10GB-Platte aufgelistet wurde :-/ Der Code von dort sieht so aus:
Delphi-Quellcode:
public
procedure FillTreeView(Path: String; RootNode: TTreeNode);
end;
var
Form1: TForm1;
implementation
procedure TForm1.FillTreeView(Path: String; RootNode: TTreeNode);
var sResult: Integer;
SearchRec: TSearchRec;
TempNode: TTreeNode;
begin
sResult := FindFirst(Path+'\*.*',faDirectory,SearchRec);
while sResult = 0 do
begin
if (SearchRec.Name = '.') or (SearchRec.Name = '..') then
begin
sResult := FindNext(SearchRec);
Continue;
end;
if SearchRec.Attr and faDirectory = faDirectory then
begin
TempNode := TreeView1.Items.AddChild(RootNode,SearchRec.Name);
FillTreeView(Path+'\'+SearchRec.Name,TempNode);
end;
sResult := FindNext(SearchRec);
end;
FindClose(SearchRec);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
FillTreeView(Edit1.Text,TreeView1.Items.Add(nil,Edit1.Text));
end;
Ich wäre für Hilfe/Links echt dankbar!
Grüße,
Aike