procedure TForm1.MyClick(Sender: TObject);
begin
if (Sender is Tbutton) then
Form1.Caption := IntToStr((Sender as TButton).Tag);
end;
procedure TForm1.testClick(Sender: TObject);
var
button1:array[1..9] of tButton;
i:integer;
begin
for i:=1 to 9 do
begin
button1[i]:= TButton.Create(self);
button1[i].top:=0+i*30;
button1[i].left:=0;
button1[i].Parent:=self;
button1[i].Caption := IntToStr(i);
button1[i].tag:=i;
button1[i].onclick:=MyClick;
end;
end;