Hallo,
nach langem Suchen habe ich die Ursache und die Lösung, falls es anderen mal genau so geht:
Ich habe zur Laufzeit ein Label erzeugt, mit welchem ich nur die Höhe eines Textes ermitteln wollte, und das danach wieder zerstört wurde.
Trotz Free bleib aber der Labeltext bestehen!
Ein kleines Beispielprojekt mit einem Panel und einem Button reicht:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
lab: TLabel;
begin
lab := TLabel.Create(self);
lab.Parent := Panel1;
lab.AutoSize := true;
lab.Text := 'Hallo Du Da';
// hier wird sonst die Labelhöhe ausgewertet
lab.Free;
end;
Klick auf Button und da steht der Text im Panel!
Ein
lab.Text := '';
vor dem Free beseitigt das Problem!
Warum der Text sonst stehen bleibt entzieht sich meiner Kenntnis!
Ciao
Stefan