在 FORM1 的 oncreate 事件中 动态创建一个 panel1  然后 如何 再在panel1 中动态创建一个label1 ,谢谢大家了!  

解决方案 »

  1.   

    var
     Label1: TLabel;
    begin
      Label1:= TLabel.Create(Panel1); //创建到Panel1
      Label1.Parent := Panel1; //放到Panel1下
    //Label1可以正常用了
    //  Label1.Left := 0;
    //  Label1.Top :=0;
    //  Label1.Caption := 'test';
    end;最后记得在Panel1释放前要释放掉Label1。
      

  2.   

    你误解我的意思了 哥们  我的意思是先动态创建一个panel  然后再在panel里面创建一个label   我现在的情况是 panel可以正常创建 但是在创建label的时候,需要把label的 Parent 赋值为panel  , 这句代码怎么写,我想不明白。 多谢赐教!
      

  3.   

    ??
    给的代码和注释不是有了么?就是设置一下Parent属性就可以了。procedure TForm1.FormCreate(Sender: TObject);
    var
      Panel1: TPanel;
      Label1: TLabel;
    begin
      Panel1 := TPanel.Create(TComponent(Sender));
      Panel1.Parent := TWinControl(Sender);
      //Panel1可以正常用了
      //  Panel1.Left := 0;
      //  Panel1.Top :=0;
      //Panel1.Width := 100;
      //Panel1.Height := 50;  Label1 := TLabel.Create(Panel1); //创建到Panel1
      Label1.Parent := Panel1; //放到Panel1下
      //Label1可以正常用了
      //  Label1.Left := 10;
      //  Label1.Top := 10;
      //  Label1.Caption := 'test';
    end;