Wenn ich deine Frage richtig verstanden habe, möchtest du das selber machen, und nicht per Datei öffnen...
Hier hab ich mal einen Codeschnipsel...
Delphi-Quellcode:
procedure GetFilesInDirectory(Directory: String; const Mask: String;
List: TListItems;
WithSubDirs, ClearList: Boolean);
procedure ScanDir(const Directory: String);
var
SR: TSearchRec;
Item : TListItem;
begin
if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) = 0 then try
repeat
begin
Item := List.Add;
Item.Caption := SR.Name;
end;
until FindNext(SR) <> 0;
finally
FindClose(SR);
end;
if WithSubDirs then begin
if FindFirst(Directory + '*.*', faAnyFile, SR) = 0 then try
repeat
if ((SR.attr and faDirectory) = faDirectory) and
(SR.Name <> '.') and (SR.Name <> '..') then
ScanDir(Directory + SR.Name + '\');
until FindNext(SR) <> 0;
finally
FindClose(SR);
end;
end;
end;
begin
List.BeginUpdate;
try
if ClearList then
List.Clear;
if Directory = '' then Exit;
if Directory[Length(Directory)] <> '\' then
Directory := Directory + '\';
ScanDir(Directory);
finally
List.EndUpdate;
end;
end;
procedure TForm1.ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
begin
GetFilesInDirectory(ShellTreeView1.Path , '*.jpg', ListView1.Items, False, True);
end;
procedure TForm1.ListView1Click(Sender: TObject);
begin
Edit1.Text := ShellTreeView1.Path + ListView1.Items[ListView1.ItemIndex].Caption;
end;
Du brauchst...
- 1 Edit
- 1 ListView
- 1 ShellTreeView
Das würde dir schonmal eine gute Grundlage bieten (die ersten 3 Punkte), wenn ich deinen Wunsch richtig verstanden habe...