使用Delphi XE2调用在运行时向dwsUnit
组件添加数组定义的方法是什么?
MyDwsUnit.Arrays.Add
返回TCollectionItem
,而非TdwsArray
,而在设计时添加数组定义会添加TdwsArray
实例!
答案 0 :(得分:3)
默认的TCollection.Add方法返回一个TCollectionItem,即使它实际上是集合管理的任何项目的实例(这不是DWScript特有的,它是Delphi VCL的东西)。
为了简化这一点,DWScript中的大多数子类集合现在重新引入一个Add方法,该方法将使用强制转换包装默认方法,因此您不必手动执行强制转换。所以你很可能使用旧版本的DWScript。
如果您不想更新,可以使用
(MyDwsUnit.Arrays.Add as TdwsArray)
代替。