用了个按钮数组!有了BUTTON[1]等,请问怎么处理它的CLICK等事件?

解决方案 »

  1.   

    怎么实现BUTTON[1]???不太明白,
    用这个试试,不行就把你的实现代码贴出来(BUTTON[1] As TButton).OnClick := MyButtonClick();MyButtonClick();为你所定义的通用过程
      

  2.   

    speed:array of TSpeedButton;form.create()
    var
    i,j:integer;
    begin
    j:=100;
    setlength(speed,3);
    for i:=1 to 3 do begin
       speed[i]:=Tspeedbutton.create(application);
       speed[I].左右高宽赋值;
       speed[i].visible:=true;
    //   speed[i].click:=---;用不了
        j:=j+100;
    end;
    end;
    请帮帮忙
      

  3.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, Buttons;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        procedure MyClick(Sender: TObject);
      end;var
      Form1: TForm1;
      speed: array of TSpeedButton;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    var
      i: integer;
    begin
      SetLength(speed, 3);
      for i:=0 to 2 do
      begin
        speed[i]:= Tspeedbutton.create(application);
        speed[i].Parent := Form1;
        speed[i].Name := 'Speed' + IntToStr(i);
        speed[i].SetBounds(100*i, 10, 80, 30);
        speed[i].visible:= true;
        speed[i].OnClick := MyClick;
      end;end;procedure TForm1.MyClick(Sender: TObject);
    begin
      ShowMessage(TSpeedButton(Sender).Name);
    end;end.
      

  4.   

    shuixin13(犬犬(心帆)) 的方法能实现,下面的我没看。
      

  5.   

    type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        procedure MyClick(Sender: TObject);
      end;
    type
      Tb=array[0..6] of TButton;
    var
      b:tb;
      i:Integer;  for i:=0 to 6 do
      beign
        b[i]:=Tbutton1.Create(self);
        b[i].Parent:=Form1;///.指定容器,不然当然没法显示
        b[i].left:=i+50;
        b[i].onclik:=MyClick;
      end;
    procedure TForm1.MyClick(Sender: TObject);
    begin
      showmessage('');
    end;
      

  6.   

    speed:array of TSpeedButton;form.create()
    var
    i,j:integer;
    begin
    j:=100;
    setlength(speed,3);
    for i:=1 to 3 do begin
       speed[i]:=Tspeedbutton.create(application);
       speed[I].左右高宽赋值;
       speed[i].visible:=true;
    //   speed[i].onclick:=ButtonClick;
    end;
    end;
    procedure TForm1.ButtonClick(Sender: TObject);
    begin
      ShowMessage(inttostr((Sender as TSpeedButton).width));
    end;