Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   procedure verlassen (https://www.delphipraxis.net/128471-procedure-verlassen.html)

khh 30. Jan 2009 12:14


procedure verlassen
 
hallo zusammen,
gibts ne möglichkeit eine procedur zu verlassen _ohne_ dass der finally-Block ausgeführt wird?


danke Gruss KH

mkinzler 30. Jan 2009 12:17

Re: procedure verlassen
 
Delphi-Quellcode:
exit;

Tyrael Y. 30. Jan 2009 12:19

Re: procedure verlassen
 
auch bei Exit wird finally noch ausgeführt.

Das finally wird IMMER ausgeführt.
Du kannst natürlich einen Bool´sche Variable setzen und im finally diese Variable prüfen und je nachdem etwas dort ausführen.

Edit:

Bevor ich geschlagen werde.

Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);
begin
  try
       Exit;
  finally
    ShowMessage('Siehste?'); //wird ausgeführt
  end;
end;
Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);
begin
  Exit;
  try

  finally
    ShowMessage('Siehste?'); //wird NICHT ausgeführt
  end;
end;

khh 30. Jan 2009 12:23

Re: procedure verlassen
 
Zitat:

Zitat von Tyrael Y.
auch bei Exit wird finally noch ausgeführt.

Das finally wird IMMER ausgeführt.
Du kannst natürlich einen Bool´sche Variable setzen und im finally diese Variable prüfen und je nachdem etwas dort ausführen.

ja , ich denke das werd ich machen.

danke euch


Gruss Kh

Luckie 30. Jan 2009 12:24

Re: procedure verlassen
 
Warum soll der finally-Block nicht ausgeführt werden? Wenn er nicht ausgeführt werden soll, dann hast du die Funktion des finally-Blocks nicht verstanden oder du solltest dein Konzept noch mal überarbeiten.

khh 30. Jan 2009 12:25

Re: procedure verlassen
 
Zitat:

Zitat von Luckie
Warum soll der finally-Block nicht ausgeführt werden? Wenn er nicht ausgeführt werden soll, dann hast du die Funktion des finally-Blocks nicht verstanden oder du solltest dein Konzept noch mal überarbeiten.

naja ich wollte einfach im finally-block ein paar variablen zurücksetzen :-)

himitsu 30. Jan 2009 12:26

Re: procedure verlassen
 
Wie sieht denn deine Prozedur aus?
Eventuell läßt es sich ja anders lösen (nicht über Try-Finally).

khh 30. Jan 2009 12:32

Re: procedure verlassen
 
Zitat:

Zitat von himitsu
Wie sieht denn deine Prozedur aus?
Eventuell läßt es sich ja anders lösen (nicht über Try-Finally).

ja lässt sich machen.
ich setze einfach _innerhalb_ des Try-Blocks die boolsche variable und verzweige entsprechend ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:50 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-2025 by Thomas Breitkreuz