如何将字符串转成类实例 例如,在EDIT里输入的字符串,根据这个字符串Create相应的类,如果没有这个类,可以有个提示什么的。。怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参考下面的代码:type TAnimal = class(TPersistent) procedure Sound; virtual; abstract; end; TAnimalClass = class of TAnimal; TCat = class(TAnimal) procedure Sound; override; end; TDog = class(TAnimal) procedure Sound; override; end;procedure TForm1.Button1Click(Sender: TObject);var vClass: TAnimalClass; aObj: TAnimal;begin RegisterClass(TDog); RegisterClass(TCat); vClass := TAnimalClass(FindClass(Edit1.Text)); aObj := vClass.Create; aObj.Sound; aObj.Free;end;{ TCat }procedure TCat.Sound;begin inherited; ShowMessage('喵喵');end;{ TDog }procedure TDog.Sound;begin inherited; ShowMessage('汪汪');end; 这个问题,在delphi2010前,一直不能很好的解决,大部分需要一些辅助手段来处理才能实现从字符串到类的过程,但是2010因为给类中的public域加入了RTTI信息,因此实现从 字符串到类的实例 可以比较完美的解决了。具体可以参考下我以前写的一篇博客,呵呵,算是简单实现了从字符串到类实例并且成功调用中的方法。Delphi2010 利用新的 RTTI 实现对包中的类从字符串到类的调用 eval("\$tmp=$str;");$str=$tmp;eval太强大,类似于js里的eval使用要小心,特别主要用户带来的输入 怎麼用DELPHI實現導數據? 一个关于C++转delphi接口函数问题 Executefile 怎么用? 我这样的学历,在北京或上海能找到工作吗? 怎样像VB中一样有个THIS....表示当前控件??? 招聘兼职delphi程序员(北京) 关于打印的难题,请高手帮忙!!! shr,xor,这些东东代表何意,谢谢! 我想在系统发出消息(比如有键按下、鼠标按下、建立窗口等)产生一个事件。该如何做?急,急,急! 制作XP菜单的控件和我自己提取的WINDOWS XP里的图标提供下载 我想了解一下,人家做的客户端防火墙拦截的时候,提示的是DNS请求 路过T场子\(^o^)/~
TAnimal = class(TPersistent)
procedure Sound; virtual; abstract;
end; TAnimalClass = class of TAnimal; TCat = class(TAnimal)
procedure Sound; override;
end; TDog = class(TAnimal)
procedure Sound; override;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
vClass: TAnimalClass;
aObj: TAnimal;
begin
RegisterClass(TDog);
RegisterClass(TCat);
vClass := TAnimalClass(FindClass(Edit1.Text));
aObj := vClass.Create;
aObj.Sound;
aObj.Free;
end;{ TCat }procedure TCat.Sound;
begin
inherited;
ShowMessage('喵喵');
end;{ TDog }procedure TDog.Sound;
begin
inherited;
ShowMessage('汪汪');
end;
具体可以参考下我以前写的一篇博客,呵呵,算是简单实现了从字符串到类实例并且成功调用中的方法。Delphi2010 利用新的 RTTI 实现对包中的类从字符串到类的调用