DWScript:在公开的Delphi类中使用事件

时间:2013-05-13 09:55:44

标签: delphi dwscript

我使用TdwsUnit.ExposeRTTI方法将Delphi类暴露给脚本。它适用于基本数据类型。

但是当我添加TNotifyEvent时它不起作用。我的Delphi类有一个OnChange : TNotifyEvent属性,当在脚本中分配这个OnChage时,我收到一个错误

"Syntax Error: More arguments expected!"

看起来脚本编译器理解我想调用事件处理程序而不是分配OnChange属性。添加"@"符号无效。

我的Delphi对象如何在脚本中有一个事件处理程序代码?

问候。

1 个答案:

答案 0 :(得分:0)

我通过使用Windows消息来解决此问题。我的脚本现在正在使用消息泵,并且公开的实例发布了一些自定义消息以向脚本发出信号,表明事件已发生。然后,脚本将调用Delphi代码以获取详细信息。当然,我必须实现GetMessage / PeekMessage / TranslateMessage和DispatchMessage。