如何利用数组创建控件?

dengyueguang 2003-08-19 10:22:02
在delphi中可以利用数组创建控件吗?
例如:如何创建image控件?
...全文
54 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mingjunlee 2003-08-19
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var Images: Array of TImage;
I, Count: Integer;
begin
Count := 10;
SetLength(Images,Count);
For I := 0 to Count-1 do
begin
Images[I] := TImage.Create(Self);
Images[I].Parent := Form1;
Images[I].Left := 10*I;
end;
end;
97866 2003-08-19
  • 打赏
  • 举报
回复
var A:Array[1..5]of TImage;
i:Integer;
begin
For i:= 1 to 5 do
begin
A[i]:=TImage.Create(Self);
A[i].Parent:=Self;
A[i].Top:=10+i*2;
A[i].Left:=10+i*2;
A[i].Width:=200;
A[i].Height:=200;
A[i].Picture.LoadFromFile('D:\Image Source\1122.bmp');
end;
end;
97866 2003-08-19
  • 打赏
  • 举报
回复
var A:Array[1..5]of TEdit;
i:Integer;
begin
For i:= 1 to 5 do
begin
A[i]:=TEdit.Create(Self);
A[i].Parent:=Self;
A[i].Top:=10+i*2;
A[i].Left:=10+i*2;
A[i].Width:=200;
A[i].Height:=200;
A[i].Picture.LoadFromFile('D:\Image Source\1122.bmp');
end;
end;
fuyifan 2003-08-19
  • 打赏
  • 举报
回复
据个例子:
Myedits是这样定义的:
MyEdits:Array of TControl
在formcreate事件中可如下使用,创建一个控件
MyEdits[i]:=TEdit.Create(self);
MyEdits[i].Parent:=Sheet01;
MyEdits[i].Visible:=True;
MyEdits[i].Top:=xxx;
MyEdits[i].Width:=xxx;
MyEdits[i].Left:=xxx;//xxx代表某个整数值
MyEdits[i].Name:='MyEdit'+inttostr(i);
(MyEdits[i] as TEdit).属性:=xxx; //把该对象看作某个具体控件处理
ysycrazy 2003-08-19
  • 打赏
  • 举报
回复
var arr_check :array of tcheckbox;
i,j:integer;
begin
j:=adoquery1.recordcount;
SetLength(arr_check,j)
for i:0 to j-1 do
begin
arr_check[i]:=tcheckbox.create(self);
arr_check[i].parents:=form1;
arr_check[i].left:=100;
arr_check[i].top:=arr_check[i].top+10;
end;
end;

BES 2003-08-19
  • 打赏
  • 举报
回复
Unit 包括: ExtCtrls


procedure TForm1.Button1Click(Sender: TObject);
var ArrImg: Array of TImage;
I, Count: Integer; //创建的个数
begin
Count := 10;
SetLength(ArrImg,Count);
For I := 0 to Count-1 do
begin
ArrImg[I] := TImage.Create(Self);
ArrImg[I].Parent := Form1;
ArrImg[I].Left := 10*I;
end;
end;
DWGZ 2003-08-19
  • 打赏
  • 举报
回复
利用Tag可以实现类似的效果

var
t: array[0..10] of TButton;

procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for I := Low(t) to High(t) do
begin
t[I] := TButton.Create(Self);
t[I].Tag := I;
end;
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧