Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - [TOpenDialog] Pfad für OpenDialog vorgeben


Narses - Di 31.01.06 14:55
Titel: [TOpenDialog] Pfad für OpenDialog vorgeben
Moin!

Beispiel:

Delphi-Quelltext
1:
2:
3:
4:
OpenDialog1.InitialDir := 'D:\';
OpenDialog1.Execute;
OpenDialog1.InitialDir := 'E:\';
OpenDialog1.Execute;

Wenn ich das (zum ersten mal) ausführe, wird in beiden Dialogen immer brav Laufwerk D und E nacheinander angezeigt. Wenn ich aber im ersten Dialog was von D auswähle, wird der zweite Dialog auch mit diesem VZ geöffnet. Hmm... :|

Wie kann ich dem OpenDialog einen Pfad mitgeben, in dem er starten soll? :gruebel:

cu
Narses


Martin1966 - Di 31.01.06 15:03

Im Open- oder Save-Dialog wird immer das Arbeitsverzeichnis verwendet. Du musst als das Arbeitsverzeichnis vor dem Anzeigen des Dialogs entsprechend setzen.


Delete - Di 31.01.06 15:10

Besser:
Zitat:

ofNoChangeDir After the user clicks OK, resets the current directory to whatever it was before the file-selection dialog opened.


Martin1966 - Di 31.01.06 15:14

Danke für den Tipp. Kannte ich noch gar nicht. ;-)

Allerdings kann man damit noch nicht das "Start" Verzeichnis setzen. Oder blicke ich da irgendwie gerade nicht durch?


Delete - Di 31.01.06 15:20

Dazu gibt es ka die entsprechende Eigenschaft. ;)


Martin1966 - Di 31.01.06 15:24

Ah... jetzt habe ich verstanden. Dauert manchmal etwas länger bei mir. :mrgreen:


Narses - Di 31.01.06 16:19

Moin!

user profile iconLuckies Tipp war natürlich - wie immer - goldrichtig. Allerdings zwingt der Dateiname (wenn er den Pfad enthält) auf das Verzeichnis. So geht´s dann (hätte ich auch gleich drauf kommen können :|):

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
OpenDialog1.InitialDir := 'D:\';
OpenDialog1.FileName := ExtractFileName(OpenDialog1.FileName);
OpenDialog1.Execute;

OpenDialog1.InitialDir := 'E:\';
OpenDialog1.FileName := ExtractFileName(OpenDialog1.FileName);
OpenDialog1.Execute;

cu
Narses