有四个label,分别是label1,label2,……,label4,如何根据一个1-4的整数,取对应的label的caption 遍历属
方法一:遍历属主上所有label控件,这种遍历方法按放到属主上控件的先后顺序,控件时存到一个Tlist上,先放的先存
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
for I:=0 to Form1.ControlCount -1 do
begin
if (Controls[i] is TLabel) then
ShowMessage(TLabel(Controls[i]).Caption);
end;
end;
方法2:数组的方式
procedure TForm1.Button2Click(Sender: TObject);
var
LabelArray: array[0 .. 4] of TLabel ;
begin
LabelArray[0]:= Label1;
LabelArray[1]:= label2;
LabelArray[2]:= label3;
LabelArray[3]:= label4;
ShowMessage(labelarray[1].Caption);
end;
方法3: 最简单的方法
procedure TForm1.Button3Click(Sender: TObject);
var
t: integer;
LabelComponent: TComponent;
begin
LabelComponent:= FindComponent('Label1');
ShowMessage(Tlabel(Form1.FindComponent('Label'+IntToStr(t+1))).Caption);
end;