Ошибка Flash # 1034: сбой приведения типа при работе с Flash Develop - PullRequest
0 голосов
/ 08 декабря 2010

Я скомпилировал 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.

Есть предложения?

Ответы [ 2 ]

4 голосов
/ 09 декабря 2010

Хорошо, я нашел решение.В мои пути к классам был включен путь к папке fl.controls во флэш-установке.Но fl.controls, где также экспортируется с моим SWC.Я предполагаю, что наличие двух определений одного и того же класса вызывало проблему, потому что когда я удалял classpath, все работало нормально.

0 голосов
/ 08 декабря 2010

Как вы, вероятно, знаете, пакет fl.controls содержит компоненты для Flash Professional CS5 и более ранних версий, которые могут использоваться в Flash Develop путем объединения компонентов в .swc: Как использовать Контроль Adobe от fl.controls. * Во FlashDevelop?

, поскольку ваш проект компилируется во Flash Professional без ошибок, проблема должна лежать в экспортированных файлах fl.controls. * .Swc.

вместо использования fl.contros. * .Swc, поскольку вы используете Flash Develop, вы можете использовать пакет spark.controls или mx.controls package из Flex 4.1 SDK. оба пакета включают классы Button и TextInput.

...