我需要在一个循环中调用 form.edit1,form.edit2,form.edit3....怎样很简单的实现?

Luckyfeeling 2001-06-27 09:40:58
for i:=1 to 10 do
begin
'form.edit' + inttostr(i)
end;
我怎样才能很简单的使用
form.edit1,form.edit2,form.edit3.....
...全文
365 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
dearmyfriend 2001-06-27
  • 打赏
  • 举报
回复
for i:=0 to form1.Controlcount-1 do
begin
if (form1.Controls[i] is TEdit) then
(form1.Controls[i] as TEdit).Text:='...';
end;
colacoca 2001-06-27
  • 打赏
  • 举报
回复
gz
enlightenment 2001-06-27
  • 打赏
  • 举报
回复

To tangt(豪鬼):要是对每个Edit的处理都不一样呢?如果是一样的自然也无须Case啦!除了for什么都不用了。

To hellen2000(老实和尚):改~~进~~~???

:)

hellen2000 2001-06-27
  • 打赏
  • 举报
回复
略作改进:
with Form do
for i:=0 to ComponentCount-1 do
begin
if Components[i] is TEdit then
IF Components[i].NAME='EDIT1' THEN
{DO SOMETHING}
ELSE IF Components[i].NAME='EDIT2' THEN
....
end;
tangt 2001-06-27
  • 打赏
  • 举报
回复
反对for +Case 的嵌套,这样的代码效率和可读性并不强。但tag的使用是一个很好的方向。
大致上while not findcomponent do
begin
find your edit component having your tag with function findcomponent(),
do smoething.
end
lastlove 2001-06-27
  • 打赏
  • 举报
回复
var CtrlName:string;
Ctrl:TEdit;

for i:=1 to 10 do
begin
CtrlName:='form.edit'+inttostr(i);
Ctrl:=Tlabel(Findcomponent(CtrlName));
Ctrl.text:=....

end;
cobi 2001-06-27
  • 打赏
  • 举报
回复
试一下这样:

for i:= 1 to 10 do
begin
Tedit(findcomponent('edit' + inttostr(i))).text := inttostr(i);
end;
kylix2001 2001-06-27
  • 打赏
  • 举报
回复
enlightenment(阿明--平均睡眠时间<6h/d的超人)的方法没错!

路人丁 2001-06-27
  • 打赏
  • 举报
回复
sorry!写成bcb了!
路人丁 2001-06-27
  • 打赏
  • 举报
回复
这么做方法行不通,这不是vb!我想你大概要做一个TEdit类指针数组分别指向各个Edit,(当然这种方法我没试验过);我所用的方法是我的控件都是动态建立的,然后存储各个控件的名字!
例如建立一个TImage控件:
TImage *Stanew[100];
for(int w=0;w<100;w++)
Stanew[w]=new TImage(Fb->ScrollBox1);
也许对你有点帮助!
enlightenment 2001-06-27
  • 打赏
  • 举报
回复
先设置每个Edit的Tag属性为自己指定的数字,

with Form do
for i:=0 to ComponentCount-1 do
begin
if Components[i] is TEdit then
case (Components[i] as TEdit ).Tag of
{Your stuff code}
1: ;//
2: ;//
else
//
end;
end;

  • 打赏
  • 举报
回复
delphi 是编译型的,不能实现这样的功能。

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧