0

我已经编译了一个 SWC 并在 flashdevelop 项目中使用它。

当我编译项目时一切都很好,但是当我运行/调试项目时,我得到:

[Fault] exception, information=TypeError: Error #1034: Type Coercion failed: cannot convert flash.display::MovieClip@43e3f99 to fl.controls.Button.

以下行导致错误:

public var loginPanel:loginControl  = new loginControl();  

LoginControlView 是影片剪辑名称。loginControlView 是资产名称。并且有一个名为 loginControl 的类扩展了 loginControlView

LoginControlView 影片剪辑包含 2 个文本框和一个按钮 (fl.controls)

如果我从 Flash IDE 编译/运行/调试,该项目运行良好。

有什么建议么?

4

2 回答 2

4

好的,我找到了解决方案。我的类路径中包含一个指向 flash 安装的 fl.controls 文件夹的路径。但是 fl.controls 也与我的 SWC 一起导出。我认为同一类的两个定义导致了问题,因为当我删除类路径时一切正常。

于 2010-12-09T08:26:01.787 回答
0

您可能知道,fl.controls 包包含 Flash Professional CS5 和更早版本的组件,通过将组件捆绑在 .swc 中可以在 Flash Develop 中使用: 如何在 FlashDevelop 中使用来自 fl.controls.* 的 Adob​​e 控件?

由于您的项目在 Flash Professional 中编译时没有错误,因此问题必须出在导出的 fl.controls.* .swc 中。

而不是使用 fl.contros.* .swc,因为您使用的是 Flash Develop,您可以使用 Flex 4.1 SDK 中的spark.controls 包mx.controls 包。这两个包都包含一个 Button 和 TextInput 类。

于 2010-12-08T14:12:57.343 回答