Einzelnen Beitrag anzeigen

oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#19

AW: Parent Problem bei eigener Komponente

  Alt 18. Mär 2015, 08:15
self.Owner.InsertComponents(Panel1); ist aber genau der Punkt, der zur Designzeit Zugriff auf das Panel1 liefert. Ohne gehts nicht. Bitte achte drauf, InsertComponent rufe ich nicht für MyPanel auf, sondern für dessen Owner!
Das ist doch
Delphi-Quellcode:
Panel1 := TPanel.Create(self);
  Panel1.Parent := self;
gleich dem
Delphi-Quellcode:
Panel1 := TPanel.Create(nil);
  Panel1.Owner := Self;

  Panel1.Parent := Self;
mit dem kleinen Problem, dass Owner eine nur-lese-Eigenschaft ist und so nicht gehen sollte. Führt aber alleine nicht dazu, dass man weitere Controls in Panel1 zur Designzeit legen kann.

CreateWnd hatte ich immer so verstanden, dass das nach dem Create aufgerufen wird wenn ein Handle verfügbar ist. Das ist beim Create noch nicht da. Das das bei einer vorhandenen Componente zur Lebenszeit wiederholt aufgerufen wird ist mir noch nie vorgekommen. Wenn ich in einer eigenen Komponente das Handle benötige habe ich den Code immer da platziert, auch für weitere Objekte. Hatte nie Probleme. Muss ich noch mal nachlesen.

Gruß oki
42
  Mit Zitat antworten Zitat