Ну не знаю, у меня все работает (Delphi 10.2.3):
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
b : TButton;
item : TControlItem;
begin
b := TButton.Create(Self);
b.Parent := GridPanel1;
b.Caption := '123';
item := GridPanel1.ControlCollection.Add;
item.Column := 1;
item.Row := 1;
item.Control := b;
// ==============
b := TButton.Create(Self);
b.Parent := GridPanel1;
b.Caption := '321';
item := GridPanel1.ControlCollection.Add;
item.Column := 2;
item.Row := 2;
item.Control := b;
end;
PS. В GridPanel создано 3 строки и 3 колонки. Вот настроить размер строк и колонок в %% - вот это трудная задача.