var
  form2:TFORM;
  button2:tbutton;
begin
  form2:=Tform.create(self);
  button2:=tbutton.create(self);
  button2.Caption:='heoo';
  button2.Left:=200;
  button2.Top:=200;
  button2.Height:=200;
  button2.Width:=200;
  button2.Parent:=form2; 
  button2.show;
  form2.Show;
end;
现在我想对这个button2编辑它的响应事件,如何编写,要完整代码!举个showmessage事件即可!

解决方案 »

  1.   

    Button2.OnClick := YourProcedure;
    //自己定义一个YourProcedure的过程
      

  2.   

    例如
    procedure MyClick(Sender: TObject);
    begin
    //写自己的事件
    end;
    Button2.OnClick := MyClick(Sender);
    就可以了
      

  3.   

    搂上说的没错  Button2.OnClick := MyClick;//用自己的替换掉动态生成的
      

  4.   

    var
      usertime:ttimer;
    begin
      usertime:=ttimer.create;
      with  usertime do
      begin  
        interval:=2000;    
        ontime:=myproc;//自已建的过程
      end;end;
      

  5.   

    我按照little2000写了,出现[Error] Unit1.pas(53): Undeclared identifier: 'button2'这是为什么?
      

  6.   

    怎么弄得,这么简单问题都没人回答,这不给学delphi的人丢脸么?
      

  7.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        procedure ButtonClick(Sender: TObject);
      end;var
      Form1: TForm1;implementation{$R *.dfm}
    procedure TForm1.ButtonClick(Sender: TObject);
    begin
      ShowMessage('OnClick');
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      Button: TButton;
    begin
      Button := TButton.Create(Self);
      Button.OnClick := ButtonClick;    <----动态定义事件
      Button.Parent := Self;
      Button.Left := 10;
      Button.Top := 10;
    end;end.
      

  8.   

    procedure MyClick(Sender: TObject);
    begin
    //写自己的事件
    end;
    Button2.OnClick := MyClick(Sender);button2是你创建的组件,如果创建的是button1,那就要变成button1了