![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
|
если:
var s:Sprite = new Sprite(); var u:Box= new Box(); // например Box то u.addChild(s); вызывает ошибку cannot convert flash.display::Sprite@854e7e6 to mx.core.IUIComponent. Хотя, по идее, у метода addChild(val: DisplayObject). Понятно, что Sprite не ипмплементирует mx.core.IUIComponent, а, как видно, контейнер Box этого хочет. Но как тогда быть, если я хочу "прибить" Sprite instance к Box instance? (например, нарисовать че-нить в Sprite программно, а потом засунуть в Box). |
|
|||||
|
стервочка (я мужик)
|
Box - должен быть наследован от Sprite
|
|
|||||
|
Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
|
в том то и дело, что Box - это mx.containers.Box, который наследуется от Container -> UIComponent -> Sprite.
Но, факт есть, возникает вышеописанная ошибка. UP! |
|
|||||
|
Flash Aксакал
Регистрация: Jun 2005
Сообщений: 636
|
в классе mx.core.Container метод addChild перегружен - не смотря на то что в документации он принимает DisplayObject, скорее всего addChild (child:IUIComponent) или ошибка возникает внутри переписанного метода, где пытаются привести аргумент к IUIComponent
Последний раз редактировалось 7thsky™; 22.02.2006 в 17:17. |
|
|||||
|
Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
|
ок, это понятно.
Но как тогда быть? Т.е. я не могу добавить объект Sprite, MovieClip... (все , что выше UIComponent'ов в цепочке наследования) как child в какой-нибудь UIComponent. В принципе, вопрос был в этом. Мне кажется, что такая ситуация "не есть хорошо") |
|
|||||
|
Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
|
такая ситуация наблюдается только с instance'ами наследников mx.core.Container.
C наследиками UIComponent (например, Button) все нормально |
|
|||||
|
Flash Aксакал
Регистрация: Jun 2005
Сообщений: 636
|
Цитата:
|
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
На уровне UIObject это реализовано так:
1. Каждый компонент -- визуальный класс (наследним мувиклипа). 2. Создание включает в себя либо аттач, либо createEmptyMovieClip c Object.registerClass Поэтому не вижу причин не цеплять простейшие классы. Посмотрю позднее, сейчас некогда. |
|
|||||
|
Flash Aксакал
Регистрация: Jun 2005
Сообщений: 636
|
Цитата:
Миша, ты про что это этож АС3 ![]() |
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
А ты думаешь внутри везде все другое?
У меня вот нет 100% уверенности |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|