Ich bin auch kein Experte. Ich hatte nur das Glück ... oder Pech (wie man das sehen will) ... dass das I-Net noch nicht verbreitet war, als ich mit der Programmierung anfing. Das heißt, ich
musste notgedrungen in die Hilfe, in die Handbücher oder in Zeitschriften (
Gott schütze das PC MAGAZIN - ehemals DOS International) gucken, wenn ich anhand von Quellcode was lernen/ausprobieren wollte.
In deinem Fall hat Luckie bereits den richtigen Code gezeigt -
"Execute" ist eine
Funktion. Sie hat also ein Rückgabeergebnis. Klickt jemand im Dialog auf OK, dann ist dieses Ergebnis
true. Klickt der User auf Abbrechen, dann ist es
false. Das kannst du dir zunutze machen und sagen
Delphi-Quelltext
1: 2: 3: 4: 5:
| if SaveDialog1.Execute then begin AssignFile(...) end; |
Dass du "= true" nicht angeben musst, liegt an der bool'schen Logik.
Delphi-Quelltext
1:
| if SaveDialog1.Execute then |
bedeutet bereits, dass du prüfst ob das Rückgabeergebnis
true ist. Ich hab´s nur als Kommentar ergänzt, damit du dir das evtl. etwas besser vorstellen kannst. Würdest du auf
false prüfen wollen, müsstest du das Ergebnis mit
not sozuagen "umdrehen":
Delphi-Quelltext
1: 2: 3: 4:
| if not SaveDialog1.Execute then begin ShowMessage('Du Ar*** hast den Dialog abgebrochen.'); end; |
In dem Fall würde die Meldung nur erscheinen, wenn jemand Abbrechen klickt.
Sei jetzt nicht sauer, aber ein paar gute Grundlagen-Tutorials (bspw. auf [url]
www.delphi-source.de[/url]) solltest du dir reinziehen, bevor du richtig tief in die Materie einsteigst.
Gruß.