Hallo zusammen,
ich erstelle Rectangle und fülle sie mit einem Label. Beides soll in einer Srcollbox am oberen Rand angeordnet werden. Im Label steht nur eine laufende Nummer. Den Rectangle weise ich TAlignLayout.Top zu, aber sie stehen nicht in der Reihenfolge wie sie erstellt wurden (siehe Bild).
Mit folgendem Code erstelle ich die Rectangle und ordne sie der Scrollbox zu:
Delphi-Quellcode:
var
Anzahl : Integer = 0; //globale Variable für die Nummerierung der Rectangle
procedure TbfDeckblattForm.Button2Click(Sender: TObject);
var
rec : TRectangle;
L : TLabel;
begin
ScrollBox1.BeginUpdate;
rec := TRectangle.Create(bfDeckblattForm);
ScrollBox1.AddObject(rec);
rec.Parent := ScrollBox1;
rec.Align := TAlignLayout.Top;
L := TLabel.Create(rec);
rec.AddObject(L);
Anzahl := Anzahl + 1;
l.Text := anzahl.ToString;
l.Align:= TAlignLayout.Left;
l.Margins.Left := 5;
ScrollBox1.EndUpdate;
end;
Die neuen Rectangle werden alle nach dem ersten Rectangle angeordnet, leider nicht nach der zuletzt hinzugefügten.
Ich habe die Version Rio 10.3.2, Ich bin mir nicht sicher, aber bei der Vorgänger-Version Rio 10.3.1 ist mir dieses Verhalten nicht aufgefallen.
Hat jemand eine Idee, was ich falsch mache?
Gruß Pascal