Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Dateityp im SaveDialog auswählen
schweiky - Do 05.05.11 21:07
Titel: Dateityp im SaveDialog auswählen
Hallo liebes Forum,
ich möchte ein StringGrid als .txt oder als .csv Datei abspeichern können. Dazu soll man bei geöffnetem SaveDialog die untere Scrollbox "Dateityp:" aufklappen und die beiden Dateitypen auswählen können. Hierfür habe ich 2 Filter gesetzt mit
SaveDialog1.Filter:='Text- Dateien (*.txt)|*.txt|CSV- Dateien (*.csv)|*.csv';
und habe erwartet, dass nun in der "Dateityp:"-Scrollbox .txt und .csv angeboten werden ... aber, nix, das Feld bleibt leer.
Was mache ich falsch?
Gruß vom schweiky
jaenicke - Do 05.05.11 21:13
Dann rufst du das wohl nicht auf bevor du den Dialog anzeigst. :nixweiss:
Warum setzt du den Filter eigentlich nicht einfach zur Designzeit im Objektinspektor? ;-)
schweiky - Fr 06.05.11 20:46
Moderiert von
Narses: Komplett-Zitat des letzten Beitrags entfernt.
Danke für die rasche Antwort.
Ich habe das, glaube ich, richtig platziert:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| procedure TForm1.speichern(Sender: TObject); var zeile: string; var Tdatei: textfile; var i: integer; begin if SaveDialog1.Execute then begin if druck=1 then begin SaveDialog1.Filter:='Text- Dateien (*.txt)|*.txt|CSV- Dateien (*.csv)|*.csv'; AssignFile(Tdatei,SaveDialog1.Filename); Rewrite(Tdatei); with StringGrid1 do begin writeln(TDatei,'HSP-Übersetzung durch FPA-Helfer'); for i:=1 to lines-1 do begin zeile:=Cells[0,i]+';'+Cells[1,i]+';'+Cells[2,i]+';'+Cells[3,i]+';'+Cells[4,i]+';'+Cells[5,i]+';'; writeln(Tdatei,zeile); end; end; CloseFile(TDatei); end; end; end; |
Warum werden die Einrückungen nicht übernommen, wenn ich den Text einfüge? Ich glaube, man kann trutzdem erkennen, worum es geht...
Ich setze den Filter im Objektinspektur nicht, weil ich ich im Programmablauf an verschiedenen Stellen den Speicherdialog aufrufe und denn jeweils andere Kombinationen von Dateitypen zu Auswahl stellen möchte.
Gruß vom Schweiky
Moderiert von
Gausi: B- durch Delphi-Tags ersetzt
Moderiert von
Narses: U- durch undefined-Tags ersetzt
Moderiert von
Narses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.
Dude566 - Fr 06.05.11 20:48
Bitte verwende die Delphi-Tags um den Quellcode formatiert anzuzeigen. ;)
[*delphi][*/delphi], ohne die Sterne.
Gausi - Fr 06.05.11 20:50
Im Execute wird der Dialog aufgerufen, den Filter setzt du erst danach. Richtig wäre: Erst Filter setzen, dann Execute. :)
schweiky - Mo 09.05.11 16:18
Hallo liebes Forum,
danke für die Tipps bzgl. des Forenbeitrags-Editors und des Save Dialogs.
Der Filter muss natürlich vor dem Aufruf gesetzt werden. Funktioniert jetzt prima.
Gruß vom schweiky
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!