Allerdings müssen die Panels ja während der Laufzeit erzeugt werden.
Wie ich EIN Panel dynamisch erzeuge, ist mir klar, aber wie ich ein Panel, auf dem noch mehrere Labels sind, während der Laufzeit erzeuge, weiß ich nicht.
Ist doch kein grosses Problem :
Delphi-Quellcode:
procedure TForm2.btn1Click(Sender: TObject);
var i,x,y : Integer;
NewPanel : TPanel;
begin
x := 0;
y := 0;
for i := 0 TO 9 do begin
NewPanel := TPanel.Create (Self);
NewPanel.Name := 'art' + IntToStr(i);
NewPanel.Color := clYellow;
NewPanel.Caption := IntToStr(i);
if (i > 0) then begin
if (i mod 5) <> 0 then begin
x := x + 60;
end
else begin
x := 0;
y := y + 60;
end;
end;
NewPanel.Left := x;
NewPanel.Top := y;
NewPanel.Width := 60;
NewPanel.Height := 60;
NewPanel.OnMouseDown := MouseDown;
NewPanel.Parent := Form2;
NewPanel.Show;
end;
end;
Das wären die Panele. Jedes braucht jetzt noch ein Label ? Dann noch das hier hintendran hängen.
Delphi-Quellcode:
NewLabel.Caption := **;
NewLabel.Font.Style := [fsBold];
NewLabel.Parent := NewPanel;