18

TdwsUnit.ExposeRTTI我使用方法向脚本公开了一个 Delphi 类。它适用于基本数据类型。

但是,当我添加TNotifyEvent. 我的 Delphi 类有一个OnChange : TNotifyEvent属性,在脚本中分配它时OnChage,我得到一个错误

"Syntax Error: More arguments expected!"

看起来脚本编译器明白我想调用事件处理程序而不是分配OnChange属性。添加"@"标志没有帮助。

我的 Delphi 对象如何让事件处理程序在脚本中包含其处理程序代码?

问候。

4

1 回答 1

1

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

于 2019-09-05T06:49:09.013 回答