![]() |
не приводится к типу
Здравствуйте.
Странную вещь заметил. Вроде даже решил. Но не понятно действительно ли так должно быть. И так Есть событие Код AS3:
И есть три класса. В первом классе вызывается Код AS3:
Код AS3:
Код AS3:
taskEventHappen [Event type="IPEvent_txt" bubbles=false cancelable=false eventPhase=2] onIPEventAction [Event type="IPEvent_txt" bubbles=false cancelable=false eventPhase=2] TypeError: Error #1034: Type Coercion failed: cannot convert flash.events::Event@f4fde21 to iconpane.IPEvent. Подскажите что я делаю не правильно? Зачем приходится пересоздавать события? |
Event не имплементит ваш IPEvent интерфейс. Да и не приводите вы, а конвертируете.
|
Цитата:
Цитата:
|
Цитата:
Я без понятия откуда там берется обычный Event, весь код вы не привели. Цитата:
Вообще приводят типы с помощью оператора "as". |
event1 as IPEvent
Event#bubbles возможно, что-то из этого вам поможет ) |
Во второй класс вам приходит IPEvent. Что вы потом диспатчите из него?
Цитата:
|
Не описан clone().
|
Цитата:
Цитата:
Цитата:
В случае когда это оканчивается неудачой делается попытка конвертацииодного класса в другой при помоши стандартных функций(на пример toString()). Поэтому ипишется в сообшении что не удается конвертировать. Хотя если бы передавался действительно IPEvent никаких проблем не возникало и нормально приводилось(!) бы к типу. Хотя возможно я ошибаюсь. Цитата:
Так как я не клонирую данный обьект и не реализую клонирование для данного класса это делает за меня dispatchEvent. он использует функцию clone() описанную в Event, которая возврашает Event. Вот откуда появляется обьект event. Спасибо за подсказку. и потраченное время. |
| Часовой пояс GMT +4, время: 05:50. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.