var
  speedbutton1 :TSpeedButton;
begin
  speedbutton1 := TSpeedButton.create(Self);
end;

解决方案 »

  1.   

    var
      speedbutton1 :TSpeedButton;
    begin
      speedbutton1 := TSpeedButton.create(Self);
      speedbutton1.Parent:=self;也可以装SELF改成其它的可停靠控件,不然无法显示!
    end;
      

  2.   

    在form的public里声明speedbutton[10]:array[1..10]of tspeddbutton;
    在form的create事件里
      for i:=1 to 10 do
      begin
        speedbutton[i]:=tspeedbutton.create(self);
        with speedbutton[i] do
        begin
          parent:=form1;
          left:=......
          top:=......//长和宽的处理自己搞定
          tag:=i;  //你要动态处理控件数组必须的标志
          onclick:=Tspeedbuttonclick;
        end;
      end;
    再在form的public中声明过程:TSpeedButtonClick(Sender:TObject);
    对它的处理过程如下:
    with sender as (TSpeedButton) do
    begin
      case tag of
        1:begin
          end;
        2:...
        ...
        10:...//各个按钮的处理事件
      end;
    end;
    明白了吗?:)
      

  3.   

    var
      sp1 :TSpeedButton;
    begin
      sp1 := TSpeedButton.create(Self);不一定是self也可是owner
      sp1.Parent:=form1(self);self也可以是panel,groupbox等容器控件
      sp1.top:=...
      sp1.left:=....
    用完可别忘记释放
    sp1.free;/sp1.destory
      

  4.   

    var
      speedbutton1 :TSpeedButton;
    begin
      speedbutton1 := TSpeedButton.create(Self);
      speedbutton1.Parent:=self;//或者SpeedButton1.parent:=panel1之类的.
    end;
      

  5.   

    oh,my....free我竟然忽略了, 不好意思,,,,