var labels: array of TLabel;//单元中定义 i:integer;//单元中定义,初始=0 var lable: TLabel; begin i := i + 1; SetLength(labels,i); lable := TLabel.Create(nil); labels[i-1] := lable; end;
其实你问的东西好多教材上都有,为什么不自己看呢?type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private FLablels : TList; function GetLableCount: Integer; function GetLables(index: Integer): TLabel; public property Lables[index: Integer]: TLabel read GetLables; property LableCount: Integer read GetLableCount; end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject); var ALable : TLabel; begin ALable := Lables[FLablels.Add(TLabel.Create(Self))]; ALable.Parent := Self; ALable.Caption := 'A New Label'; ALable.Show; end;procedure TForm1.FormCreate(Sender: TObject); begin FLablels := TList.Create; end;procedure TForm1.FormDestroy(Sender: TObject); begin FLablels.Free; end;function TForm1.GetLableCount: Integer; begin Result := FLablels.Count; end;function TForm1.GetLables(Index: Integer): TLabel; begin Result := TLabel(FLablels[Index]); end;
labels: array of TLabel;//单元中定义
i:integer;//单元中定义,初始=0
var
lable: TLabel;
begin
i := i + 1;
SetLength(labels,i);
lable := TLabel.Create(nil);
labels[i-1] := lable;
end;
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
FLablels : TList;
function GetLableCount: Integer;
function GetLables(index: Integer): TLabel;
public
property Lables[index: Integer]: TLabel read GetLables;
property LableCount: Integer read GetLableCount;
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
ALable : TLabel;
begin
ALable := Lables[FLablels.Add(TLabel.Create(Self))];
ALable.Parent := Self;
ALable.Caption := 'A New Label';
ALable.Show;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
FLablels := TList.Create;
end;procedure TForm1.FormDestroy(Sender: TObject);
begin
FLablels.Free;
end;function TForm1.GetLableCount: Integer;
begin
Result := FLablels.Count;
end;function TForm1.GetLables(Index: Integer): TLabel;
begin
Result := TLabel(FLablels[Index]);
end;