Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   preloader подскажите, почему не работает (http://www.flasher.ru/forum/showthread.php?t=144857)

DenverZ 22.09.2010 19:47

preloader подскажите, почему не работает
 
Вложений: 1
Здравствуйте,
прикрепляю исходник прелоадера и картинки для загрузки

если код пишу непоследственно по флеш ролике, то все работает
но через класс не пашет

подскажите, что не так?

Вложение 25189

AlesNormales 22.09.2010 20:23

Исходник открыть не могу, озвучьте ошибку.

DenverZ 22.09.2010 20:27

суть в следующем
есть три слоя
первый (самый нижний) это картинка, на втором кадре
второй слой (по середине) это прелоадер (символ) в первом кадре, который связан с классом Preloader
третий слой, это actionscript в первом кадре, который просто останавливает клик stop();

вот класс Preloader.as

Код AS3:

package classes
{
        import flash.display.MovieClip;
        import flash.events.*;
 
        public class Preloader extends MovieClip
        {               
                public function Preloader()
                {
                        addEventListener(Event.ENTER_FRAME, enterFrameListener);
                }
 
                private function enterFrameListener(e:Event):void
                {
                        var bytesLoaded:Number = stage.loaderInfo.bytesLoaded;
                        var bytesTotal:Number = stage.loaderInfo.bytesTotal;
                        var total:Number = bytesLoaded / bytesTotal;
 
                        if (bytesLoaded == bytesTotal || bytesTotal == 0)
                        {
                                removeEventListener(Event.ENTER_FRAME, enterFrameListener);
                                gotoAndStop(2);
                        }
 
                        else
                        {
                                preloaderFill_mc.scaleX = total;
                        }
                }
        }
}

после запуска ничего не происходит, прелоадер (полоска) стоит на месте
если делаю с имитацией загрузки, полоска заполняется, но потом начинает мерцать, то прелоадер (полоска), то картинка контента
и пишет ошибку

Код:

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


i.o. 22.09.2010 20:29

ну вам же все уже написали:
Цитата:

Не удается вызвать свойство или метод со ссылкой на объект "null".
ищите что у вас null, трейсите или еще как.

DenverZ 22.09.2010 20:32

я умею читать и знаю английский, хотя бы на уровне перевода ошибок, яж написал, что не понимаю в чем дело, с виду все верно

null это addEventListener ругается

если сможете помочь решить проблему, буду благодарен
если нет, то плиз не стоит флудить

i.o. 22.09.2010 20:33

а я вам и помогаю - трейсите объекты, только так вы сможете найти где у вас там null

DenverZ 22.09.2010 20:35

да я оттрейсил уже все что можно, не понимаю что сделать нужно
я только учусь

я же специально прикрепил код, запустите, гляньте, сразу станет все ясно...
если действительно помочь хотите ;-)

i.o. 22.09.2010 20:37

подозреваю, что stage вы не трэйсили
или вот это еще вызывает сомнения preloaderFill_mc

DenverZ 22.09.2010 20:38

трейсил ([object Stage])

я не понимаю, неужели так трудно запустить код, и посмотреть? зачем толочь воду в ступе, если можно посмотреть все... для этого и прикрепил код

Добавлено через 32 секунды
preloaderFill_mc это инстанс имя символа

i.o. 22.09.2010 20:43

мне - да, трудно. Подождите немного, сейчас еще кто-нибудь подключится )


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

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