如何动态创建label,
比方说有5个人的名字,
那么就要创建5个label,并把这5个人的名字分配给
label的caption

解决方案 »

  1.   

    var
       l : TLable;
     begin
      l :=TLable.Create();
      l.free;
     end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      a:array[0..4] of TLabel ;
      i:integer;
    begin
      for i := 0 to 4 do
      begin
        a[i] := TLabel.Create(nil);
        a[i].Parent := Form1;
        a[i].Left := 200 + 100*i;
        a[i].Top := 200;
        a[i].Visible := True;
        a[i].Caption := 'Label'+inttostr(i);
      end;
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Temp:TLabel;
    begin
      Temp := TLabel.Create(self);
      Temp.Show;
      Temp.Left   := 50 ;
      Temp.Top    := 50;
      Temp.Width  := 100;
      Temp.Height := 50;
      (Temp as TLabel).Caption:= '这个是创建的Label控件';
      self.InsertControl(Temp);
    end;
      

  4.   

    如果未知有几个人,那么数组又是怎样定义得??<<<<<<<<---------------------------------定义动态数组var
      a:array of TLabel ;
    使用的时候用SetLength()为它分配内存就可以了