Zwar hat Tino bereits hier ein schönes
Beispiel wie man eine modernes Verzeichnis-Auswahl-Dialogfenster bekommt, aber dafür muß man erst eine etwas komplizierte Funktion entwickeln oder zumindest kopiern. Hier eine Delphi eigene Variante, die, ich frage mich eigentlich warum, nicht als Komponente angeboten wird. Aus diesem Grund führt sie ein Schattendasein. Ich dagegen nutze sie gerne, denn ich muß dann nicht zuerst Code für die API Dialogbox suchen und, das ist noch wichtiger, ich kann in der Dialogbox neue Ordner erstellen. Das geht zwar auch mit der API Variante, dann wird der Code aber ganz kompliziert. Hier also die Delphi eigene SelectDirectory Variante:
Delphi-Quelltext
Hier eine Funktion von mir:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| function SelDir(var Dir: String): Boolean; begin if not DirectoryExists(Dir) then begin Dir := 'c:\'; SetCurrentDir(Dir); end;
if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt], 0) then begin if Dir[Length(Dir)] <> '\' then Dir := Dir + '\'; Result := True; end else Result := False; end; |
Beispiel:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure TForm1.Button1Click(Sender: TObject); var Dir: String; begin Dir := 'c:\eigene dateien'; if SelDir(Dir) then ShowMessage(Dir); end; |
Siehe auch:
...einen Verzeichnisauswahl-Dialog anzeigen? #3