Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Speichern und Öffnen (https://www.delphipraxis.net/36221-speichern-und-oeffnen.html)

Chegga 21. Dez 2004 11:01

Re: Speichern und Öffnen
 
Hi,

Zitat:

Äh, was denn zum Beispiel für welche?
1. Was ist, wenn keine Datei ausgewählt wurde? ( :wink: )
2. Was ist, wenn eine Datei nicht geöffnet bzw.
gespeichert werden kann?

Dafür hat's dann so genannte Kontrollstrukturen. :mrgreen:
(Ich würde sagen wir beenden hier die Diskusion, sonst
sitzen wir morgen noch am PC. :-D )
"Soll's jeder so machen, wie er's will?!" :wink:

MfG Marc

Luckie 21. Dez 2004 11:08

Re: Speichern und Öffnen
 
zu 1: Das wird doch schon hier abgefangen:
Delphi-Quellcode:
if OpenDialog1.Execute then
Die Eigenschaft Execute ist nur dann wahr, wenn auf OK geklickt wurde. Und auf OK kann man nur klicken, wenn eine Datei ausgewählt wurde.

zu 2: Dann gehöret der try-except Block aber in den if Block des OpenDialoges:
Delphi-Quellcode:
if OpenDialog1.Execute theen
begin
  fs := TFileStreame.Create(OpenDialog1.Filename, ...);
  try
    try
      fs.Write(...);
    except
      on E: EWriteError do ShowMessaage(E.Message);
    end;
  finally
    FreeAndNil(fs);
  end;
end;

Matze 21. Dez 2004 12:21

Re: Speichern und Öffnen
 
Zitat:

Zitat von Chegga
Delphi-Quellcode:
procedure TForm1.ffnen1Click(Sender: TObject);
begin
  try
   if OpenDialog1.Execute then
   wasduwillst.LoadFromFile (OpenDialog1.FileName);
   // "wasduwillst" ist in dem Fall eine Variablenvereinbarung
  except
   ShowMessage ('Fehler beim Öffnen der Datei!');
  end;
end;

Wieso muss das try vor

Delphi-Quellcode:
if OpenDialog1.Execute then
Wenn, dann hätte ich's so gemacht:

Delphi-Quellcode:
if OpenDialog1.Execute then
try
  wasduwillst.LoadFromFile (OpenDialog1.FileName);
  // "wasduwillst" ist in dem Fall eine Variablenvereinbarung
except
  ShowMessage ('Fehler beim Öffnen der Datei!');
end;
Es kann sein, dass es so, wie du's geschrieben hast, auch korrekt ist, nur verstehe ich das nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 Uhr.
Seite 2 von 2     12   

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-2025 by Thomas Breitkreuz