Autor |
Beitrag |
GuaAck
      
Beiträge: 378
Erhaltene Danke: 32
Windows 8.1
Delphi 10.4 Comm. Edition
|
Verfasst: Sa 23.04.11 23:07
Hallo,
mein Programm soll eine Datei speichern. Der Name steht fest, aber der Benuztzer soll das Verzeichnis wählen können. Mit TOpenDialog muss man aber wohl zwingend eine Datei anwählen, oder habe ich einen Schalter übersehen?
Ich behelfe mich jetzt vorläufig so, dass man eine beliebige Datei anwählen muss, und nehme dann per extractfilepath das, was ich brauche. Ist aber keine schöne Lösung.
Grüße
Günther
|
|
bummi
      
Beiträge: 1248
Erhaltene Danke: 187
XP - Server 2008R2
D2 - Delphi XE
|
Verfasst: Sa 23.04.11 23:58
FileCtrl.SelectDirectory
_________________ Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: So 24.04.11 10:30
GuaAck hat folgendes geschrieben : | mein Programm soll eine Datei speichern. Der Name steht fest, aber der Benuztzer soll das Verzeichnis wählen können. Mit TOpenDialog muss man aber wohl.... |
ähmm.. nimmt man da nicht TSaveDialog?
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 24.04.11 11:44
Wenn der Name vorgegeben ist, dann braucht er doch nur den Ordner auswählen lassen.
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: So 24.04.11 12:01
Jo richtig, als Standard einrichten den 'Arbeitsplatz', falls man das Lw wechseln möchte/muss.
[OT]Persöhnlich komm ich damit irgendwie nicht klar, fehlt immer was (Verzeichniss erstellen)  [/OT]
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 24.04.11 12:14
ALF hat folgendes geschrieben : | Jo richtig, als Standard einrichten den 'Arbeitsplatz', falls man das Lw wechseln möchte/muss. |
Wie meinst du das?
Im Anhang einmal ein Beispiel wie der Dialog direkt nach der Anzeige aussieht, wenn das Startverzeichnis c:\program files (x86)\cnpack ist...
Da kann man dann natürlich das Verzeichnis des eigenen Programms oder den Ordner Eigene Dateien stattdessen zuerst auswählen, je nach Anwendungszweck.
Einloggen, um Attachments anzusehen!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: So 24.04.11 12:46
@jaenicke
So schön sieht er unter D7 WinXp nicht aus
(meinte ja nur mit 'Arbeitsplatz', so hab ich es immer bei mir eingerichtet)
und es fehlt halt neues Verzeichnis erstellen.
GuaAck hat folgendes geschrieben : | aber der Benuztzer soll das Verzeichnis wählen können. |
Der nächste Wunsch ist, 'möchte aber noch ein Verzeichnis erstellen können' im Dialog, ist meistens so.
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 24.04.11 13:12
Einloggen, um Attachments anzusehen!
|
|
ALF
      
Beiträge: 1085
Erhaltene Danke: 53
WinXP, Win7, Win10
Delphi 7 Enterprise, XE
|
Verfasst: So 24.04.11 13:38
komischerweise zickt er in D7 rum!
Auszug aus der D7 Hilfe.
Quelltext 1: 2: 3: 4: 5: 6:
| function SelectDirectory(var Directory: string; Options: TSelectDirOpts; HelpCtx: Longint): Boolean;
type TSelectDirOpt = (sdAllowCreate, sdPerformCreate, sdPrompt); TSelectDirOpts = set of TSelectDirOpt; |
Darum hab ich es nie verwendet! besser gesagt bin nie klar gekommen
Ist aber OT
Gruss Alf
_________________ Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 24.04.11 13:55
Naja, gut, Delphi 7 unterstützt dann die ganzen Optionen der API-Funktion noch nicht. Da bleibt dann nur die selbst zu nutzen.
// EDIT:
Aber da gibts ja auch was hier in der Library.
Und nebenbei aus XE: Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| TSelectDirExtOpt = (sdNewFolder, sdShowEdit, sdShowShares, sdNewUI, sdShowFiles, sdValidateDir); TSelectDirExtOpts = set of TSelectDirExtOpt;
function SelectDirectory(const Caption: string; const Root: WideString; var Directory: string; Options: TSelectDirExtOpts = [sdNewUI]; Parent: TWinControl = nil): Boolean; overload; | Die Optionen bieten also die Auswahl, ob ein neuer Ordner angelegt werden kann, das Editfeld zur manuellen Eingabe da ist, Netzwerkfreigaben angezeigt werden, die neue Oberfläche benutzt werden soll, auch Dateien zu sehen sein sollen und es gibt die Möglichkeit eine Eingabe im Editfeld über ein Callback zu validieren.
Für diesen Beitrag haben gedankt: KleinesPferd
|
|
|