Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проблемы с переходом компиляции в FlashIDE в Flash Builder (http://www.flasher.ru/forum/showthread.php?t=146537)

AlexsWulf 10.11.2010 19:31

Проблемы с переходом компиляции в FlashIDE в Flash Builder
 
Доброго времени суток.

Есть довольно большой проект. Из за довольно большой библиотеки компилируется в FlashIDE он с каждым днем все дольше и дольше.
В проекте очень часто используется такой подход как:
Есть мувик например FriendPanel на нем лежат кнопки. Каждой кнопке прописано свое имя и т.д.

Решили переэти на FB и компилировать проект в нем. Сделали экспорт в swc из FlashIde
Подключили ее к проекту. При компиляции получаем следующую ошибку:
Код AS3:

TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
        at classes.panels::FriendsPanel()

сам код
Код AS3:

                        public var stepLeftBtn : SimpleButton;
                        public var stepRightBtn : SimpleButton;
 
                public function FriendsPanel():void {
 
                        stepLeftBtn.addEventListener(MouseEvent.CLICK, stepLeftBtnClick);
                        stepRightBtn.addEventListener(MouseEvent.CLICK, stepRightBtnClick);
}

Насколько я понимаю он не видит что stepLeftBtn лежит на FriendsPanel в библиотеке.
Можно конечно переписать код и создавать, настраивать расположение кнопок в самом коде. Но проект очень большой и переделать будет очень тяжело :(

Подскажите что делать?

AlliAS 10.11.2010 22:06

по идее поможет вот это:
Код AS3:

                        public var avatar:MovieClip;//тут будет ссылка на экземпляр символа из библиотеки
                          public var stepLeftBtn : SimpleButton;
                        public var stepRightBtn : SimpleButton;
 
                public function FriendsPanel():void {
                        avatar = new FriendsPanelAvatar();//создаем экземпляр библиотечного символа, если его имя FriendsPanelAvatar
                        stepLeftBtn = avatar.stepLeftBtn;
                        stepRightBtn = avatar.stepRightBtn;
                        stepLeftBtn.addEventListener(MouseEvent.CLICK, stepLeftBtnClick);
                        stepRightBtn.addEventListener(MouseEvent.CLICK, stepRightBtnClick);
}


AlexsWulf 10.11.2010 23:11

Спасибо. Помогло.


Часовой пояс GMT +4, время: 00:28.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.