![]() |
Frage zu Parent
Moin,
ich habe einige memos,edits etc auf meinem TabSheet(Parent), wenn ich es nun freigebe(Free), sind dann die daraufliegenden kompos auch aus dem speicher gelöscht? Also klappen tut es wunderbar, ich muss nur wissen obs richtig ist |
Re: Frage zu Parent
Dafuer ist nicht die Parent-Beziehung sondern die Owner-Beziehung verantwortlich.
Der Owner ist dafuer verantwortlich die Komponenten zu loeschen, deren Owner er ist. Er bewahrt sie in der Property Components auf. Parent ist eine Fenster-Beziehung. Also auf malt eine Komponente immer auf das Fenster seines Parents oder ihr eigenes Fenster ist ein Kind-Fenster des Patent-Fensters. Owner und Parent muessen nicht gleich sein. Das Aendern des Parent hat insbesondere Auswirkung auf die Tab-Reihenfolge. Wird eine Komponente mit Free geloescht, so benachrichtigt sie mit der Methode Notification unter anderem ihren Owner damit er die Komponente aus seiner Liste austragen kann. |
Re: Frage zu Parent
hoi, danke für die antwort, also muss ich den owner mit angeben? weil funktionieren tut es bis jetzt auch ohne
|
Re: Frage zu Parent
Hallo
Zitat:
Zur Laufzeit musst Du z.B. das Memo mit
Delphi-Quellcode:
erzeugen.
Memo1:=Memo1.Create(TabSheet1); // legt den Besitzer fest (wichtig für die Freigabe)
Memo1.Parent:=TabSheet1; // legt den Parent fest Wenn Du das Memo mit
Delphi-Quellcode:
erzeugst ist das Formular der Besitzer des Memo's. D.h. das Memo wird erst freigegeben, wenn das Formualr freigegeben wird. Angezeigt wird das Memo aber auf dem TTabSheet. TTabSheet ist ja der Parent. Wenn Du das TabSheet jetzt freigibst verschwindet auch das Memo. Da das Memo hat ja keinen Parent mehr. Da man das Memo nicht mehr sieht könnte man auf die Idee kommen dass es freigegeben wurde. Das ist aber eine optische Täuschung.
Memo1:=Memo1.Create(Form1);
Memo1.Parent:=TabSheet1; |
Re: Frage zu Parent
hoi,
danke, das hilft mir weiter :). habe es nur gedacht, da ich das memo immer wieder erzeugen konnte (mit gleichem namen) ohne fehler |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 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 by Thomas Breitkreuz