问题标签 [dwscript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1142 浏览

delphi - Delphi Web Script (DWScript) 将脚本方法链接到外部控制事件

我想知道 DWScript 是否支持使用脚本方法作为 Delphi 表单上的控件的事件处理程序。例如,我想将 TButton OnClick 事件链接到脚本中存在的方法。

我可以通过调用返回 TMethod 对象的 GetProcMethod 来使用 RemObjects Delphi 脚本引擎执行此操作。然后我使用 SetMethodProp 将脚本方法分配给按钮的 OnClick 事件。

我想在 DWScript 而不是 Rem 对象脚本引擎中执行此操作,因为它执行我需要的其他一些东西。

0 投票
1 回答
248 浏览

delphi - DWScript:在运行时向 dwsUnit 添加新的数组定义

使用 Delphi XE2 在运行时调用将数组定义添加到dwsUnit组件的方法是什么?

MyDwsUnit.Arrays.Add返回 a TCollectionItem, not TdwsArray,而在设计时添加数组定义会添加一个TdwsArray实例!。

0 投票
1 回答
403 浏览

delphi - DWScript:如何在调用后获得结果

好吧,我对 DWScript 完全陌生。现在我对它的能力很着迷,但是尽管我阅读了随附的 wiki 中的所有页面以及此处的问题/答案,但在从 Delphi 调用函数后,我仍然找不到提取结果的方法,如下所示:

然后我被困住了:exec.result.toString什么也没给我。只要我看到我Result在 exec 对象中没有,这就是为什么从脚本堆栈中清除项目时结果被删除和丢失的原因。请告诉我完成这个简单任务的正确方法是什么?

0 投票
1 回答
518 浏览

delphi - DelphiWebScript 中值的运行时评估

我的 delphi 应用程序使用 JvInterpreter(来自 Jedi 项目)运行脚本。

我使用的一个特性是表达式的运行时评估。
脚本示例:

JvInterpreter 不知道 X_SomeName。当需要 X_SomeName 的值时,脚本编写者调用其 OnGetValue 回调。这指向我处理的一个函数。我在那里查找 X_SomeName 的值并返回它。然后 JvInterpreter 使用我提供的值调用 ShowMessage。

现在我考虑切换到 DelphiWebScript,因为它具有适当的调试接口,并且应该比 JvInterpreter 更快。

问题:不过,我没有找到任何明显的方法来实现 JvInterpreter 的 OnGetValue/OnSetValue 函数。

X_SomeName 应该被认为(实际上是,大多数时候)一个由主机应用程序处理的变量。

有任何想法吗?

谢谢!

0 投票
2 回答
331 浏览

delphi - 在 DWScript 中设置入口点

有没有办法在 DWScript 中设置入口点?

例如,如果我开始执行脚本,我希望它执行一个过程 Main,而不是常规入口点中的代码(begin ... end.)。

我知道可以从 Delphi 执行函数,但我不确定这是否完全相同。

0 投票
1 回答
181 浏览

delphi - 在 dwscript 中注册隐式/显式类型转换运算符

是否可以从 Delphi 注册隐式和/或显式类型转换运算符?

我找到了http://code.google.com/p/dwscript/issues/detail?id=124,但它似乎处理脚本内运算符重载,这是一个相当古老的问题。

0 投票
1 回答
248 浏览

delphi - 在 DWScript 中从 Delphi 向记录类型添加方法

在我创建了一个 TRecordSymbol 之后,如何向它添加构造函数和方法?我尝试使用 TMethodSymbol 收效甚微,因为我找不到定义方法执行的方法。

0 投票
1 回答
187 浏览

delphi - 从 DWScript 中的 TProgramInfo 检索记录参数

如何从 TdwsUnit 中函数的 Eval 事件中的 TProgramInfo 对象检索记录参数?似乎该对象仅提供直接检索基本数据类型或可能是脚本对象的方法。

0 投票
1 回答
114 浏览

delphi - TdwsUnit 中的记录方法

有没有办法向 TdwsUnit 中的记录添加方法?似乎 members 属性只允许您添加字段。是否也可以注册构造函数?

0 投票
1 回答
193 浏览

delphi - TdwsUnit 性能

dwsMathComplexFunctions.pas在 TdwsUnit 中注册函数会产生与在单元中注册的常规魔术函数相同的性能吗?