名前 題名 ▼ Mr.XRAYさん > 考えてみたのですが(本当か?) > やっぱり,生成した子コンポにイベントを割り当てのが一番のような > 気がします.どうせ生成コードを書かなければならないのですから. > > こんな感じですね. > 動作確認環境は,Windows XP(SP3) + Delphi XE > > type > TForm1 = class(TForm) > Button1: TButton; > procedure FormCreate(Sender: TObject); > procedure Button1Click(Sender: TObject); > private > { Private 宣言 } > APanel : TPanel; > procedure OnPanelChildChick(Sender: TObject); > public > { Public 宣言 } > end; > > var > Form1: TForm1; > > implementation > > {$R *.dfm} > > procedure TForm1.FormCreate(Sender: TObject); > begin > APanel := nil; > end; > > procedure TForm1.Button1Click(Sender: TObject); > begin > if APanel = nil then begin > APanel := TPanel.Create(Self); > APanel.Parent := Self; > APanel.ParentBackground := False; > APanel.Color := clSkyBlue; > APanel.SetBounds(30, 50, 200, 200); > > with TButton.Create(Self) do begin > Parent := APanel; > Name := 'AAA'; > OnClick := OnPanelChildChick; > SetBounds(50, 50, 100, 40); > end; > > with TButton.Create(Self) do begin > Parent := APanel; > Name := 'BBB'; > OnClick := OnPanelChildChick; > SetBounds(50, 100, 100, 40); > end; > end; > end; > > procedure TForm1.OnPanelChildChick(Sender: TObject); > begin > Application.MessageBox(PChar(TControl(Sender).Name), '情報'); > end; GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link