Hallo,
irgendie ist dein Code komisch
while not panelquer.Eof do
panelquer ist also ein DataSet (?).
Delphi-Quellcode:
while not panelquer.Eof do
begin
if not Assigned(panelen.pans.FindComponent() then
begin
...
tpa.Name:=panelquer.fieldbyname('anzeige').AsString;
tpa.Caption:=panelquer.FieldByName('anzeige').AsString;
end;
panelquer.Next;
end;
Du gehst durch panelquer und legst Panel mit immer gleicher Position an, wozu ?
Delphi-Quellcode:
if not Assigned(panelen.pans.FindComponent(panelquer.fieldbyname('anzeige').AsString)as TPanel) then begin
tpa:=TPanel.Create(Self);
Self ist also der Owner.
Self enthält das Panel also in seiner FindComponent-Liste.
if not Assigned(Self.FindComponent(panelquer.fieldbyname('anzeige').AsString)as TPanel) then
Als Optimierung würde ich
panelquer.fieldbyname('anzeige').AsString
in eine lokale Variable packen.
Das amcht auch das Debuggen einfacher.
Heiko