新RTTI模块打球,我无法找到一种方法来设置一个事件处理程序与新的实用程序。试图像这样:

LProp := TRttiContext.Create.GetType(Form1.ClassInfo).AsInstance.GetProperty('OnClick');
LProp.SetValue(Form1, {a TValue!}); 

的SetValue需要通过一个TValue,但我还没有找到一种方法,通过TValue来表示TMethod。任何意见?

PS。和侧面的问题..这似乎与“L”前缀RTTI变量是一个约定(和良好的一个海事组织,元代码变成真正的快速拼图)。但到底是什么,它实际上代表什么?

有帮助吗?

解决方案

可以使TValue含有aribtrary类型的与所述一个值从方法。尝试是这样的:

lValue := TValue.From<TNotifyEvent>(eventHandler);

顺便说一句,我认为将L只是指的 OCAL变量。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top