我动态生成了多个BUTTON,我如何添加它们的ONCLICK事件?同时,我要使用onclick事件来改变它们本身的属性,比如:改变其颜色、大小等。谢谢

解决方案 »

  1.   

    晕,直接调用事件就行了,比如button1.click
      

  2.   

    如果你嫌DELPHI里的提供的太容易,就用消息处理来实现,WNDPROC中实现当点击右键,判断击的是什么组件,然后调用什么过程
      

  3.   

    定义一个youclick事件
    然后让 button1.onclick := youclick
    就OK了
      

  4.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls;type
      TForm1 = class(TForm)
        procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
          Shift: TShiftState; X, Y: Integer);
      private
        { Private declarations }
        procedure btnClick(Sender: TObject);
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.DFM}{ TForm1 }procedure TForm1.btnClick(Sender: TObject);
    begin
      (sender as TButton).Width:=200;
    end;procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    var
      mybutton:Tbutton;
    begin
      mybutton:=Tbutton.Create(nil);
      with mybutton do
      begin
        parent:=Form1;
        left:=100;
        top:=100;
        caption:='click';
        onclick:=btnClick;
      end;
    end;end.