回 帖 发 新 帖 刷新版面

主题:请问一下高手们有多个EDIT,如何实现....

就是说edit1.clear;edit2.clear;edit3.clear;........................editn.clear;

这个可不可利用其它的办法来实现让多个编辑框清空呢?请问,,有知者,请回复,谢谢!

回复列表 (共10个回复)

沙发

for i:=0 to form1.ControlCount-1 do
 begin
      if form1.Controls[i] is tedit then
      tedit(form1.Controls[i]).clear;
end;

板凳

顶1楼的回答。

但是楼主,你这样做有什么意义呢?还不如在源代码里复制粘贴几次呢....
因为,无论你怎么使代码看起来更短,其实编译后的EXE文件还不如老老实实地一个一个地清空形成的EXE小,高效。
并且使用这样的循环,会使源程序看起来不直观,也不易维护。

华而不实!

3 楼

支持楼上的

4 楼

for i:=1 to n do
  begin
    temptext:=format('edit%d',[i]);
    tedit(findcomponent(temptext)).clear;
  end;

一个一个的清空,形成的exe文件小吗,我不知道耶....

请二楼的说一下,如何生成小的exe文件,,,....

5 楼

不会吧,编译后会有差吗?

6 楼

[quote]for i:=1 to n do
  begin
    temptext:=format('edit%d',[i]);
    tedit(findcomponent(temptext)).clear;
  end;

一个一个的清空,形成的exe文件小吗,我不知道耶....

请二楼的说一下,如何生成小的exe文件,,,....[/quote]
请看一下,你是不是比一个一个地清空,多用了变量,咱先不说它们是不是会增加EXE的体重,咱就说内存空间的占用吧:变量会不会占用内存空间?????

再有,您的程序虽然短,只有区区几行代码,看起来真是短小,要比上百句edit.clear短多了。----但是,有哪个程序会在一个form里用到上百个edit?----我要是edit3,edit6,edit8不清空,那你怎么改程序呢?你觉得程序修改起来方便吗?请问?

饭还是要一口一口地吃,不要总想着注射葡萄糖来替代吃饭。

7 楼

谢谢楼上

8 楼

清空edit,,,那是要根据他的需要用不同的代码,,,没有代码是万能的...

虽然一句一句写,是省了不和内存空间,,,一般人都不会去那样写的...

9 楼

呵呵也许是我们的书写习惯不一样吧......我觉得组件本身提供的published,让我们在设计时可以看到,是非常好用的,如果抛弃不用,是不是很可惜。唉,在代码区输入edit1然后输入一个"."接着就显示了所有可用的属性和方法,是一件很爽的事情....
求同存异吧!让我们在争论中互相提高

10 楼

我也是这样想啊,但是这一个是我同学说的啊,谢楼上的

我来回复

您尚未登录,请登录后再回复。点此登录或注册