比如有10个label,我想用一个循环语句对其赋值,该怎么做?
解决方案 »
- 为什么delphi2010按f12可以调出窗体,按f11却无法切换到unit窗口
- delphi PageControl的问题
- 关于事务机制
- 求名,只要好听,不管录用与否均有分
- 紧急寻求dxfBrowseDirectoryDlg控件
- 大侠们,求救呀,试了两天都没知道原因是什么,关于存储过程的。。。
- 用InstallShield6.31制作安装程序时,如果把图标编程6.3版本一样的图。而不要它原来的。或者干脆把整个对方框图标改了。高手指点,谢谢了
- 高分等待:哪位高手能指点一下有关 Delphi 读写并口的方法!资料 等待中...
- delphi里怎么把 String类型转换到 Tbitmap类型
- SOS SOS SOS SOS,救救我吧!
- 有哪位高手知道对chm文件的编程接口?(xiyi0616)
- 奇怪问题,高分求解
Mylbl : array[10] of Tlabel;
i:integer;
begin
for i:=0 to 9 do
begin
Mylbl:=Tlabel.Create(Form1);
Mylbl.Parent:=Form1;
Mylbl.Left:=10;
Mylbl.Top:=10*i;
Mylbl.OnClick:=MyOnClick;//让控件响应自己的事件
Mylbl.Show;
end;
参看http://expert.csdn.net/Expert/topic/1400/1400431.xml?temp=.1822168
2.在使用的时候根据Tag的值将其取出使用。如下:
////////////////////////////////////////////
// 根据 Tag 获得动态控件(panMain)
// 当Tag为数字时表示用 Tag 否则为控件名
////////////////////////////////////////////
function GetDynamicControl(Tag:Variant):TControl;
var
i:integer;
iTag:Integer;
iType:integer;
begin
result:=nil;
// ShowMessage(IntToStr(VarType(Tag)));
iType:=VarType(Tag);
if (iType=varInteger) or (iType=varByte) or (iType=varWord) then
begin
iTag:=Tag;
for i:=0 to panMain.ComponentCount-1 do
begin
if panMain.Components[i].Tag=iTag then
begin
Result:=TControl(panMain.Components[i]);
break;
end;
end;
end
else
Begin
for i:=0 to panMain.ComponentCount-1 do
begin
if panMain.Components[i].Name=Tag then
begin
Result:=TControl(panMain.Components[i]);
break;
end;
end;
End;
end;panMain 是一个TPanel,当然也可以是Self了。