gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-03 14:35:18 25 4
gpt4 key购买 nike

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

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

"Syntax Error: More arguments expected!"

看起来脚本编译器知道我想调用事件处理程序而不是分配 OnChange 属性。添加“@”符号没有帮助。

我的 Delphi 对象如何拥有一个事件处理程序,并在脚本中包含其处理程序代码?

问候。

最佳答案

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

关于delphi - DWScript:在公开的 Delphi 类中使用事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16519270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com