设一个label的数组 lab:Array[1..n]of TLabel;
每个LABEL的Tag值与其name中的数字相同,如label的name为'fj1',则tag为1;
var
i:integer;
begin
for i:=0 to ComponentCount-1 do
begin
if Components is TLabel then
begin
if TLabel(Components).tag in [1..n] then
lab[TLabel(Components).tag].Caption:='';
end;
end;
end;
TAG = $1001
TAG = $1002
TAG = $2001
TAG = $2002
这种我觉得最好设定一个(可变)数组,然后在程序逻辑里边直接对数组进行操作
然后调用一个ResetDiaplayLabelCcaption在这个里边设置Label.Caption
在这个函数里边用循环/枚举 什么办法都无所谓了
哈,其實你的思路不是很好,但也不是不能實現,不管了,能得到分就好
var i:integer;
lb:TComponent;
for i:=0 to 9-1 do
begin
lb:=FindComponents(K+IntTostr(i));
if (lb<>nil) and (lb is TLabel) then
TLabel(Lb).caption:='你要填的數據';
end;