var commdxdb:array[0..12] of tdxdbedit
for i:=0 to 12 do
begin
commdxdb[i]:=tdxdbedit.create(self);
end;
也可以使用动态数组吧,具体的没试过,
指针是肯定可以的
var p:^tdxdbedit;
var tlist1:tlist;
tlist1:=tlist.create();
while true do
begin
new(p);
p^:=tdxdbedit.create(self);
p.parent:=self;
p.top:=34;
p.bottom:=45;
tlist1.add(p);
end;
for i:=0 to 12 do
begin
commdxdb[i]:=tdxdbedit.create(self);
end;
也可以使用动态数组吧,具体的没试过,
指针是肯定可以的
var p:^tdxdbedit;
var tlist1:tlist;
tlist1:=tlist.create();
while true do
begin
new(p);
p^:=tdxdbedit.create(self);
p.parent:=self;
p.top:=34;
p.bottom:=45;
tlist1.add(p);
end;
解决方案 »
- 【2008-2009 NBA竞猜系列之】2008-11-21 湖人VS太阳
- 关于异常处理的问题
- ADO为何无法通过Microsoft.Jet.OLEDB.4.0访问加密Access数据库?
- delphi编译的执行文件使用了那些BPL
- 一个进程能有多少个线程(在windows 2000)
- delphi中用ole打开以某模板文件为模板的新文件而不是模板文件本身,该如何写?
- 求助-根据名称调用窗口
- 系统集成?
- 用delphi可以开发触摸屏程序吗?
- SPX编程问题
- 关于UML与delphi的结合问题,送100分,分不够可加!!!
- 紧急求救:要从右边的21个数字中找出哪几个数的和为左边值,数字个数不确定,大约10个以内
begin
if controls[i].ClassType =TEdit then TEdit(controls[i]).ReadOnly:=false;
if controls[i].ClassType =TMaskEdit then TMaskEdit(controls[i]).ReadOnly :=false;
if controls[i].classType=Tcombobox then TCombobox(controls[i]).Enabled :=true;
if controls[i].ClassType=Tradiobutton then TradioButton(controls[i]).Enabled :=true;
end;
end;
这样要可以了吧
begin
if (Components[i] is Tdxdbedit) then
....//处理
end;
如果你想按一定的顺序,请设置Tdxdbedit的tag值,其余的自己想办法吧(你一定能行)!
var
commdxdb: tdxdbedit;
i,j:integer;for i:=1 to 6 do
begin
commdxdb:=tdxdbedit.create(application);
for j:=0 to form.ComponentCount-1 do
if form.Components[j].ClassName=tdxdbedit then
if form.Components[j].Tag=i then
commdxdb:=form.componets[j];end;
begin
....
commdxdb:=tdxdbedit.create(application);
if form1.controls[i].classType=tdxdbedit then
commdxdb:=TdxDbedit(controls[i]);
。
end;
这样我应该如何实现或是用别的方法也行,请你再多多指教!!
commdxdb.text := Tdxdbedit(findcomponent('dxdb'+inttostr(i))).text;