基本的に私がやろうとしているのは、実行時に Tbutton の配列を作成し、各ボタンの OnClick イベント ハンドラーを作成することです。ボタンの作成は問題なく動作します。OnClick の部分を正しく処理しようとする試みが不十分であることをお許しください。広範囲にグーグル検索しましたが、役に立ちませんでした。http://docwiki.embarcadero.com/RADStudio/XE5/en/Eventsのコードをたどろうとしましたが、たどるのに 苦労しました。とにかく探していたものかどうかはわかりません。
procedure this(sender:TObject);
end;
var
Form1: TForm1;
x: Integer;
y: Integer;
p:array [1..3,1..3] of Tbutton;
implementation
{$R *.dfm}
procedure TForm1.t(Sender: TObject);
begin
for x := 1 to 3 do
for y := 1 to 3 do
begin
p[x,y]:=tbutton.Create(nil);
p[x,y].Parent:=form1;
p[x,y].height:=Round(Height/3);
p[x,y].Width:=Round(width/3);
p[x,y].Left:=(x-1)*(p[x,y].Width);
p[x,y].Top:=(y-1)*(p[x,y].height);
p[x,y].OnClick:=this;
end;
end;
procedure TForm1.this(sender: TObject);
begin
p[x,y].Caption:='avasfd';
end;
end.
ありがとう。-ベンジャミン。