procedure TForm1.Button1Click(Sender: TObject);
 var
  Ed:Tedit;
begin
  Ed:=Tedit.Create(Self);
  Ed.name:='edit1';
  Ed.Text:='edit1';
  Ed.top:=20;
  Ed.left:=20;
  Ed.Parent:=self;
  Ed.show;
end;

解决方案 »

  1.   

    其实动态创建控件是一件简单的事,
    首先你要声明一个你想要动态生成控件的实例。
    然后在执行段中创建这个实例。
    这样以后就可以把创建的这个实例,当成你窗体中的控件一样使用了,
    可以对它改属性,响应事件等工作。
    使用完毕后,你也可以free它,保险起见。
    好。
    祝:身体健康!!
      

  2.   

    var MyButton: TButton;
    begin    
        MyButton := TButton.Create(Self);
        MyButton.Parent := MyPanel;
        MyButton.Name := 'MyButton';
    end;
    主要是Create时的Owner参数和设置动态生成控件的Parent属性。
    至于释放嘛,可以让Owner去管理。
      

  3.   

    动态生成控件首先要创建类也就是create,然后设置其各种属性,最关键的是
    parent,因为这是你父类,一定要有
      

  4.   

    1、create和destroy过程
    2、变量create和free了没有;
    3、控件名,申明父类
      

  5.   

    关键是parent这个属性!一般是form或者是panel
    没有它就显示不出来,其他的东西设置和非可视的控件一样。
      

  6.   

    关键是parent一般要设置为form或者panel
    没有他就显是不出来,其他的设置和创建过程和非可视的一样!