![]() |
Re: Problem mit einer procedure (Action deklaration)
Ich glaube hab das jetzt gelöst... Action:=caFree; bleibt in OnClose Ereignis, wo es auch hingehört und nicht in meiner procedure.
|
Re: Problem mit einer procedure (Action deklaration)
Aber verstanden hast Du es immer noch nicht, richtig?
|
Re: Problem mit einer procedure (Action deklaration)
Ne nicht ganz... na ja vllt irgendwann.
|
Re: Problem mit einer procedure (Action deklaration)
Im OnClose wird Dir Action als TCloseAction übergeben. In Deinem Code nicht (es ist ja nicht das OnClose-Ereignis), daher wird auf TForm.Action zugegriffen, das es ja auch automatisch als Property gibt. Dieses ist aber vom TYp TBasicAction, daher die Fehlermeldung. Wenn es diese Property nicht gäbe, hättest Du eine Fehlermeldung bekommen "Undefinierter Bezeichner: Action", dann wäre das Problem gar nicht erst aufgekommen.
[edit] Vielleicht etwas ausführlicher: das OnClose sähe ja so aus
Delphi-Quellcode:
Wenn Du nun Action etwas zuweisen willst, wird der Parameter Action (also TCloseAction) herangezogen, wo caFree als Wert in Ordnung geht. In Deiner aufrufenden Methode gibt es diesen Parameter nicht, Action ist auch nicht als lokale Variable deklariert, also versucht Delphi, Action irgendwie aufzulösen und wird bei TForm fündig, welches eine Property Action besitzt. Diese Property ist aber nicht vom Typ TCloseAction, sondern vom Typ TBasicAction, was etwas ganz anderes ist. Hier ist eine Zuweisung von caFree nicht möglich, deshalb gibt Delphi eine Fehlermeldung aus. [/edit]
procedure TDeinForm.FormClose(Sender: TObject; var Action: TCloseAction);
|
Re: Problem mit einer procedure (Action deklaration)
U juh juhii.... :roteyes: Aber hab soweit verstanden. Thx.. :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:01 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