delphi动态生成控件
我想用for循环来控制控件的生成和位子的摆放,比如说循环10次就一排5个分2排显示。循环15次就一排5个,分3排显示。有朋友教我用数组做可惜还是做不来。不知道怎么动态的生...
我想用for循环来控制控件的生成和位子的摆放,比如说循环10次就一排5个分2排显示。循环15次就一排5个,分3排显示。
有朋友教我用数组做可惜还是做不来。
不知道怎么动态的生成控件。
我在csdn上也找过了
var
Mybutton:Tbutton;
begin
Mybutton:=Tbutton.create(self);
Mybutton.name:='Mybutton1';
Mybutton.parent:=self;
Mybutton.top:=50;
Mybutton.left:=50;
Mybutton.visible:=true;
end;
可是还是不太懂,希望能给个完整点的小示例
先谢谢了 展开
有朋友教我用数组做可惜还是做不来。
不知道怎么动态的生成控件。
我在csdn上也找过了
var
Mybutton:Tbutton;
begin
Mybutton:=Tbutton.create(self);
Mybutton.name:='Mybutton1';
Mybutton.parent:=self;
Mybutton.top:=50;
Mybutton.left:=50;
Mybutton.visible:=true;
end;
可是还是不太懂,希望能给个完整点的小示例
先谢谢了 展开
1个回答
2013-08-07
展开全部
type
Mybuttons=array[1..3,1..5] of Tbutton;
procedure TForm1.Button1Click(Sender: TObject); //点击按钮,动态生成按钮
var
Mybutton:Mybuttons;
i,j:integer;
begin
for i:=1 to 3 do
for j:=1 to 5 do
begin
Mybutton[i,j]:=Tbutton.create(self);
Mybutton[i,j].name:='Mybutton'+inttostr(j+(i-1)*5);
Mybutton[i,j].parent:=self;
Mybutton[i,j].top:=200+(i-1)*50;
Mybutton[i,j].left:=50+j*100;
Mybutton[i,j].visible:=true;
end;
这样就可以啦...定义一个二维数组,来控制行列
同时二维数组的两个下标I和J海可以来控制按钮的摆放。。
程序改进的话可以用个文本框Edit来获取要显示的行和列,手动输入,当然,你在定义数组类型那个下标就要大点了,不然会越界的!
Mybuttons=array[1..3,1..5] of Tbutton;
procedure TForm1.Button1Click(Sender: TObject); //点击按钮,动态生成按钮
var
Mybutton:Mybuttons;
i,j:integer;
begin
for i:=1 to 3 do
for j:=1 to 5 do
begin
Mybutton[i,j]:=Tbutton.create(self);
Mybutton[i,j].name:='Mybutton'+inttostr(j+(i-1)*5);
Mybutton[i,j].parent:=self;
Mybutton[i,j].top:=200+(i-1)*50;
Mybutton[i,j].left:=50+j*100;
Mybutton[i,j].visible:=true;
end;
这样就可以啦...定义一个二维数组,来控制行列
同时二维数组的两个下标I和J海可以来控制按钮的摆放。。
程序改进的话可以用个文本框Edit来获取要显示的行和列,手动输入,当然,你在定义数组类型那个下标就要大点了,不然会越界的!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询