有关Foxpro的'&'命令&('Edit'+'1')在delphi中有无类似方法?(50分)

  • 主题发起人 主题发起人 zj_cat
  • 开始时间 开始时间
Z

zj_cat

Unregistered / Unconfirmed
GUEST, unregistred user!
在FoxPro中,有一个‘&’宏命令,可以灵活地将字符串转化为类名或者函数名等其它属性方法;自从FoxPro转到delphi中后,我想将以前的一些程序转到delphi中去,但我的旧程序中的一些宏替换不如转换,要知道,我的程序中同一个控件有七八十个之多,且具有共同的属性,要是事先赋值的话,不用循环语句与宏命令是多么痛苦!
 
可用此法来实现。
a:='Edit';
n:=1;
TEdit(a+IntToStr(n)).Name:='asdfasd';

因为Delphi是编译的,所在语句命令要编译成二进制的,不能动态组织,
所以没有这种宏。
可以找一些技巧来实现。
 
呵呵,程云的方法不行吧,至少也要findcompenent才行啊。
确切地说没有可以和&相当的方法。
 
可以用Self.FindComponent(ObjectName) as ObjectClass来访问指定名字的控件
加上循环后基本可以满足你的要求.
(Self.FindComponent(ObjectName) as TEdit).Text := 'Thank You For Read
My Answer!!!';
 
控件名字可以,
想字符串变指令行..... 自己做编译器吧!
 
只能用FINDCOMPONENT
 
下面是最基本的思路:
if Object is 你所想要的 Then
Object.Caption:='你好'
End;
 
多人接受答案了。
 
后退
顶部