Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Fehler beim Programmende nach Erzeugung von Panels (https://www.delphipraxis.net/154142-fehler-beim-programmende-nach-erzeugung-von-panels.html)

DeddyH 29. Aug 2010 19:03

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Ich bin mir nicht ganz sicher, aber gehört zum jedem InsertControl/InsertComponent nicht auch ein RemoveControl/RemoveComponent? Wobei man sich das ja ganz sparen kann, wenn man gleich den richtigen Owner angibt.

Steve9825679 29. Aug 2010 19:04

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Alles klar, das wars, DANKE euch beiden!
Ich muss
Delphi-Quellcode:
  x.InsertComponent(B);
  x.InsertComponent(C);
verwenden. Die restlichen Inhalte der drei Panels werden dann mit InsertControl (diese Code-Teile hab ich hier nicht gepostet, weil vorher schon rausgefiltert) hinzugefügt.
Danke nochmals!

sx2008 29. Aug 2010 19:07

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Zitat:

Zitat von zeras (Beitrag 1045952)
wenn ich die Zeilen lösche, geht es, aber es kommt keine Meldung.
// x.InsertControl(B);
// x.InsertControl(C);

Wieso rufst du InsertControl auf?
Durch Setzen des Property Parent ist automatisch definiert wo das erzeugte Control in der Hierarchie aller Controls steht.
Das wäre dann Doppelt-Gemoppelt.
Man sollte übrigens das Property so spät wie möglich setzen; also zuerst die anderen Eigenschaften wie Color, Align,... setzen und dann erst Parent zuweisen.

PS: Finger weg von InsertControl - das wird schon automatisch im Konstruktor durch die Angabe des Owners erledigt!!

Steve9825679 29. Aug 2010 19:09

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Alles klar, danke für deinen Tipp!

DeddyH 29. Aug 2010 19:11

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Nunja, das hatte ich ja bereits 2 mal erwähnt :roll:

Mattze 30. Aug 2010 17:15

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Hi,

also ich vermute mal, dass durch den Hinweis parent:=x das Ding schon als "control" (Componente) in der Componentlist von x hängt. Wenn Du jetzt noch mal insertcontrol machst, geht sie nochmal als Componente rein. Das geht natürlich schief beim Abräumen und würde genau diese Fehlermeldung erklären.

Gruß
Mattze

DeddyH 30. Aug 2010 18:13

AW: Fehler beim Programmende nach Erzeugung von Panels
 
Nicht Parent und Owner verwechseln. Der Parent ist für die Anzeige zuständig, der Owner für die Speicherverwaltung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 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