delphi中控件数组如何批量赋值?
label[1]:=label1;label[2]:=label2;...label[1O]:=label1O;这样赋值太麻烦,如何通过循环给控件数组批量赋值?通过for...
label[1]:=label1;label[2]:=label2;...label[1O]:=label1O;这样赋值太麻烦,如何通过循环给控件数组批量赋值?
通过for循环,label[i]:=label+‘i'会出错
应该怎么办?谢谢 展开
通过for循环,label[i]:=label+‘i'会出错
应该怎么办?谢谢 展开
3个回答
展开全部
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
for i:= 1 to 6 do
begin
TLabel(FindComponent('Label' + IntToStr(i))).Caption := '我是'+inttostr(i)+'号';
end;
end;
这样能够实现楼主要的功能哈~~~~
var
i: integer;
begin
for i:= 1 to 6 do
begin
TLabel(FindComponent('Label' + IntToStr(i))).Caption := '我是'+inttostr(i)+'号';
end;
end;
这样能够实现楼主要的功能哈~~~~
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般情况,定义了控件数组,就直接赋值了,
象你这样的情况,可以考虑
LabelIndex:=1;//根据实际控件数组设置
for i := self.ControlCount-1 downto 0 do
begin
if (self.controls[i] is TLabel) then
begin
label[LabelIndex].assign(Self.Controls[i]);
Inc(LabelIndex);
end;
end;
象你这样的情况,可以考虑
LabelIndex:=1;//根据实际控件数组设置
for i := self.ControlCount-1 downto 0 do
begin
if (self.controls[i] is TLabel) then
begin
label[LabelIndex].assign(Self.Controls[i]);
Inc(LabelIndex);
end;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
for i := self.ControlCount-1 downto 0 do
begin
if (self.controls[i] is TLabel) then
(Self.Controls[i] as TLabel).Caption:='Label'+inttostr(i);
end;
end;
已经在delphi7 中通过。
var
i: integer;
begin
for i := self.ControlCount-1 downto 0 do
begin
if (self.controls[i] is TLabel) then
(Self.Controls[i] as TLabel).Caption:='Label'+inttostr(i);
end;
end;
已经在delphi7 中通过。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询