Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi FreeAndNil beim Schließen einer Form (https://www.delphipraxis.net/10442-freeandnil-beim-schliessen-einer-form.html)

Karsten 18. Okt 2003 19:05


FreeAndNil beim Schließen einer Form
 
Hallo,

Ich habe mein Programm in mehrere Forms unterteilt wobei die jeweiligen Unter-Forms nur bei Bedarf angezeigt wedern.

Eines dieser Forms enthählt weitere Informationen zu den Daten die im Haupt-Form angezeigt werden, d.h. es kann angezeigt werden, muß aber nicht sein.

Beim Wechsel des Datensatzes im Haupt-Form müssen natürlich auch die Informationen im DatenInfo-Form geändert werden.

Um zu überprüfen ob das DatenInfo-Form vorhanden ist (angezeigt wird) wird folgender Code verwendet:

Code:
  If Assigned(FormDatenInfo) than
    ...
Wenn jetzt kein Bedarf an diesen Informationen besteht soll man dieses Form natürlich auch schließen können.

Weil ich aber wie oben beschrieben mit Assigned arbeite muß das DatenInfo-Form mit FreeAndNil geschlossen werden was aber im zu schließenden Form nicht möglich ist.

D.h. das eigentliche Schließen (FreeAndNil) muß vom Haupt-Form ausgehen.

Besteht eine Möglichkeit vom DatenInfo-Form z.B. eine "Message" zu schicken um vom Haupt-Form das
Code:
  FreeAndNil(FormDatenInfo)
auszuführen ?

Gruß,
Karsten

Mystic 18. Okt 2003 19:34

Re: FreeAndNil beim Schließen einer Form
 
Versuchs doch mal so:

Delphi-Quellcode:
procedure TDatenInfoForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  DatenInfoForm := nil;
  Action := caFree;
end;
Ich hoffe, ich habe dir geholfen. :wink:

MfG,

Mystic

Karsten 19. Okt 2003 18:01

Re: FreeAndNil beim Schließen einer Form
 
Ja das hast Du, danke.

Wenn doch nur alles so einfach währe.

Gruß,
Karsten


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz