![]() |
autom. Erweiterung beim Savedialog...
Hallo,
ich habe bei einem Savedialog mehrere Filter. Wie kann ich nun einstellen, dass, wenn der Benutzer nur den Dateinamen (ohne Erweiterung) eingibt, die Datei mit dem ausgewählten Dateiformat (Filter) gespeichert wird? Bei DefaultExt kann ich doch nur ein Format eingeben. |
Re: autom. Erweiterung beim Savedialog...
Moin Markus
Delphi-Quellcode:
[Edit]Hochkomma vergessen :roll: [/Edit]
if ExtractFileExt(SaveDialog.FileName) = '' then
case SaveDialog1.FilterIndex of 1: DateiName := ChangeFileExt(SaveDialog.FileName,'.txt'); 2: DateiName := ChangeFileExt(SaveDialog.FileName,'.doc'); end; [edit=Sharky]Doppelposting auf wunsch gelöscht ;-) Mfg, Sharky[/edit] |
Re: autom. Erweiterung beim Savedialog...
Danke, genau das was ich suchte :thuimb:
|
Re: autom. Erweiterung beim Savedialog...
Mal ne dumme frage: unter welcher eigenschaft muss ich
Zitat:
Delphi-Quellcode:
müsste dann ja so aussehen. Aber unter welcher eigenschaft im OI?
if ExtractFileExt(SaveDialog.FileName) = '' then
case SaveDialog1.FilterIndex of 1: DateiName := ChangeFileExt(SaveDialog.FileName,'.rtf'); 2: DateiName := ChangeFileExt(SaveDialog.FileName,'.txt'); 3: DateiName := ChangeFileExt(SaveDialog.FileName,'.html'); 4: DateiName := ChangeFileExt(SaveDialog.FileName,'.htm'); end; |
Re: autom. Erweiterung beim Savedialog...
Einfach hinter Savedialog.Execute. ;)
|
Re: autom. Erweiterung beim Savedialog...
meinst du so:
Delphi-Quellcode:
procedure TForm2.Speichern1Click(Sender: TObject);
begin if SaveDialog1. Execute then SynEdit1.Lines.SaveToFile(SaveDialog1.FileName); if ExtractFileExt(SaveDialog1.FileName) = '' then case SaveDialog1.FilterIndex of 1: DateiName := ChangeFileExt(SaveDialog1.FileName,'.rtf'); 2: DateiName := ChangeFileExt(SaveDialog1.FileName,'.txt'); 3: DateiName := ChangeFileExt(SaveDialog1.FileName,'.html'); 4: DateiName := ChangeFileExt(SaveDialog1.FileName,'.htm'); end; |
Re: autom. Erweiterung beim Savedialog...
So erscheint mir das logischer:
Delphi-Quellcode:
procedure TForm2.Speichern1Click(Sender: TObject);
var Dateiname: string; begin if SaveDialog1. Execute then begin if ExtractFileExt(SaveDialog1.FileName) = '' then case SaveDialog1.FilterIndex of 1: DateiName := ChangeFileExt(SaveDialog1.FileName,'.rtf'); 2: DateiName := ChangeFileExt(SaveDialog1.FileName,'.txt'); 3: DateiName := ChangeFileExt(SaveDialog1.FileName,'.html'); 4: DateiName := ChangeFileExt(SaveDialog1.FileName,'.htm'); end else Dateiname := SaveDialog1.FileName; SynEdit1.Lines.SaveToFile(Dateiname); end; end; |
Re: autom. Erweiterung beim Savedialog...
ok, das funzt. Danke an euch alle.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz