我希望能够通过类名字符串创建一个表单,这个问题之前已经被提出, 但是我不想使用GetClass
,而是想要使用Delphi的新RTTI功能。
通过这段代码,我已经得到了一个TRttiType
,但是我不知道如何实例化它。
var
f:TFormBase;
ctx:TRttiContext;
lType:TRttiType;
begin
ctx := TRttiContext.Create;
for lType in ctx.GetTypes do
begin
if lType.Name = 'TFormFormulirPendaftaran' then
begin
//how to instantiate lType here?
Break;
end;
end;
end;
我也尝试过lType.NewInstance
,但没有成功。
Show()
方法了。只需正常调用即可:f.Show;
- Remy LebeauTForm(f.AsObject).Show;
。 - RRUZf
是一个TValue
,当我看到 Niyoko 的代码时才发现的。 - Remy Lebeau