Cool.
Noch etwas Genörgel am Rande.
Statt sowas:
Delphi-Quellcode:
for i := 1 to 8 do
begin
(FindComponent('pnl'+IntToStr(i)) as TPanel).Height := pnlGroup1.Height div 8;
(FindComponent('pnl'+IntToStr(i)) as TPanel).Left := 1;
(FindComponent('pnl'+IntToStr(i)) as TPanel).Top := 1 + (i * pnlGroup1.Height div 8) - pnlGroup1.Height div 8
end;
nimm doch lieber eine Variable:
Delphi-Quellcode:
var
pnl: TPanel;
for i := 1 to 8 do
begin
pnl := (FindComponent('pnl'+IntToStr(i)) as TPanel);
pnl.Height := pnlGroup1.Height div 8;
pnl.Left := 1;
pnl.Top := 1 + (i * pnlGroup1.Height div 8) - pnlGroup1.Height div 8
end;
So ist es lesbarer
und schneller.
Und im konkreten Fall, wo du mehrere Positionsproperties auf einmal setzt, würde ich mir mal
SetBounds anschauen.