Problem med Parent og FindComponent
Jeg har skrevet et program i Delphi hvor jeg opretter min egen Panel1 i runtime, og derefter en Button1, som jeg også laver i runtime, og så vil jeg sætte Button1's Parent til at være Panel1,men af en eller anden mærkelig grund bliver Button1 ikke vist, hvis dens Parent ikke er blevet lavet under design time, hvorfor?
Her er koden:
//Opret Panel1:
TPanel.Create(self).Name := 'Panel1';
with TPanel(FindComponent('Panel1')) do
begin
top := 88;
left := 88;
height := 88;
width := 88;
Parent := self; //Har også prøvet med Parent := form1
end;
//Så oprettes Button1:
TPanel.Create(self).Name := 'Button1';
with TButton(FindComponent('Button1')) do
begin
top := 88;
left := 88;
height := 88;
width := 88;
Parent := TPanel(FindComponent('Panel1'));
end;
Det er ved
Parent := TPanel(FindComponent('Panel1')); det går galt.
Når jeg kører den, vises Button1 ikke i Panel1, men hvis jeg laver Panel1 under design time, dvs. i Delphi, og skriver Parent := Panel1, så virker det fint nok.
Hvad er årsagen til det, og hvad er løsningen på problemet?