W winall Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #21 delphi 还没提供此功能 不过你可以用 edit1.name:='nam'; nam.text:=???
阿 阿器 Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #22 乱说: 使用对象指针,a:^Tedit 我想可以实现,不过不是把string变成某种控件 而是已分配了此控件,只不过用string来指定此控件 在想想
I iie Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #23 1,不要把数据库原语拿来跟pascal比较 2,尽可能忘掉数据库编程时学来的那些技巧 3,pascal实现宏代换也很容易 4,delphi的VCL也提供了一个符号代换的资源:TAG 5,delphi中的宏代换可以简单地逆向实现: case AComponent.Tag of Id1: ...; Id2: ...; else ...; end;
1,不要把数据库原语拿来跟pascal比较 2,尽可能忘掉数据库编程时学来的那些技巧 3,pascal实现宏代换也很容易 4,delphi的VCL也提供了一个符号代换的资源:TAG 5,delphi中的宏代换可以简单地逆向实现: case AComponent.Tag of Id1: ...; Id2: ...; else ...; end;
B barton Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #24 字符串替换控件的方法以上shangcm和hpretty讲得都可以.不过在实际应用中用处并不大. 代替函数也不是不行.只是需要变通.把你要使用的所有函数用一个dll封装,然后用LoadLibrary 装入内存,用GetProcAddress来取地址运行.基本上Fox能做的事Delphi都能做.只是没有那么 方便罢了. 面向对象肯定比面向过程优越.你还需要转这个大弯.你转过这个弯就会发现你的思路稍有点 问题.现在都到COM时代了,就别再追究什么函数或字符串了.
字符串替换控件的方法以上shangcm和hpretty讲得都可以.不过在实际应用中用处并不大. 代替函数也不是不行.只是需要变通.把你要使用的所有函数用一个dll封装,然后用LoadLibrary 装入内存,用GetProcAddress来取地址运行.基本上Fox能做的事Delphi都能做.只是没有那么 方便罢了. 面向对象肯定比面向过程优越.你还需要转这个大弯.你转过这个弯就会发现你的思路稍有点 问题.现在都到COM时代了,就别再追究什么函数或字符串了.
Z zhongpu Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #26 得了,用简单的替换在delphi里肯定是不行的。 要在运行时实现字符串对应控件或函数(如在InputEdit(TEdit)中输入'lable1'或'sin(x)'),只能变相的 用FindComponent,Components.Name=InputdEdit.Text,...的方法。 而对函数或过程,要用手工代码识别,做编译程序完成的工作。
得了,用简单的替换在delphi里肯定是不行的。 要在运行时实现字符串对应控件或函数(如在InputEdit(TEdit)中输入'lable1'或'sin(x)'),只能变相的 用FindComponent,Components.Name=InputdEdit.Text,...的方法。 而对函数或过程,要用手工代码识别,做编译程序完成的工作。
程 程云 Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #30 可以这样, a:='edit1'; TEdit(FindComponent(a)).text:='asdfasdf';
Z zhengzhijia Unregistered / Unconfirmed GUEST, unregistred user! 2001-05-12 #33 程云的方法挺简单。 其实,这个问题的提出没有太多的实用价值。 对不起!个人认为。
程 程云 Unregistered / Unconfirmed GUEST, unregistred user! 2001-05-23 #34 这个只在有大量动态生成的对象时, 如需要引用这些对象, 哪就只有这样作了, 一般是用不着的。
J joyman Unregistered / Unconfirmed GUEST, unregistred user! 2001-05-23 #35 你最好加个判断: if (FindComponent('edit'+inttostr(i)) is TEdit) then FindComponent('edit'+inttostr(i)).text:='asdfasdf'; 这样在动态的时候保险多啦,要不就会出错。。。。。
你最好加个判断: if (FindComponent('edit'+inttostr(i)) is TEdit) then FindComponent('edit'+inttostr(i)).text:='asdfasdf'; 这样在动态的时候保险多啦,要不就会出错。。。。。