![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2009
Адрес: SPb
Сообщений: 26
|
Друзья, такой вопрос.
В сцене имеются несколько объектов [SimpleButton] с именами (Instance Name) item1, item2, item3. Все они упакованы в MovieClip с именем menu, которому назначен класс Menu. В описании класса я пишу: Т.е. к объекту по имени я могу обратиться, а поместить в массив нет. Почему? Есть ли альтернатива? |
|
|||||
|
Регистрация: Nov 2009
Адрес: SPb
Сообщений: 26
|
|
|
|||||
|
У меня все ок, покажите весь код.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
|
Регистрация: Nov 2009
Адрес: SPb
Сообщений: 26
|
Собственно это и весь код:
package { import flash.display.MovieClip; public class Menu extends MovieClip{ var items:Array=[item1,item2]; public function Menu(){ // constructor code trace(items[0], item1); } } } Если есть возможность посмотреть сцену, прикладываю исходник, в CS5. |
|
|||||
|
Цитата:
- Вы чего-то не допоказали - бага компилятора - нужно попробовать написать этот код в другой функции или другим способом - ошибка кеширования, по-крайней мере при компиляции во FlashBuilder такие появляются время от времени Возможности нет. Переместите items=[item1,item2] в конструктор. Инициализации полей по месту может происходить в неадекватном порядке (хотя именно такой код какой вы привели всегда работал нормально - грешить остаётся только на этот порядок и на 3 вышеприведённых пункта) Да даже не в порядке инициализации массива дело, а в том что в момент его инициализации полям item1 и item2 еще не присвоено значение. |
|
|||||
|
Цитата:
__________________
:) |
|
|||||
|
Регистрация: Nov 2009
Адрес: SPb
Сообщений: 26
|
Поместил items=[item1,item2] в конструктор, заработало.
Видимо действительно дело в порядке инициализации. |
|
|||||
|
А мне что-то подсказывает, что до первого собтия FRAME_CONSTRUCTED никаких детей у меню не будет (и это, кстати, вполне логично).
Автор, попробуйте вот так:
__________________
...вселенская грусть |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:23. |
|
|
« Предыдущая тема | Следующая тема » |
|
|