Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   visible.flase/true - А что происходит на самом деле? (http://www.flasher.ru/forum/showthread.php?t=136964)

Stanislavsky 01.03.2010 18:55

visible.flase/true - А что происходит на самом деле?
 
Привет!
Подскажите, можно ли так "схалтурить"?
Есть клип. В нем addChild несколько других Мувиков. Я хочу узнать, а что будет если я добавлю их все в конструкторе на сцену, а потом, буду visible.false/true менять от функции к функции, с условием != null.
Чувствую, что есть подвох)
1. В чем проблема?
2. В случае с сайтом - пользователь заметит?
3. Как избежать (если можно)?
4. Как правильно?
5. Спасибо!

ratin 01.03.2010 23:52

Если будете менять visible до того, как добавить movieClip на сцену, то никто ничего не увидит.

Stanislavsky 02.03.2010 00:08

Цитата:

Сообщение от ratin (Сообщение 890254)
Если будете менять visible до того, как добавить movieClip на сцену, то никто ничего не увидит.


"До того" - раньше в коде? или раньше в другой функции?

Zebestov 02.03.2010 01:24

раньше по времени выполнения

chabapok 02.03.2010 02:02

Цитата:

а потом, буду visible.false/true менять от функции к функции, с условием != null
В случае с сайтом, если у пользователя дебаг версия плеера, то он не только заметит, а и будет мечтать убить того, кто это сделал. Чтобы все было хорошо надо в try{}catch(){} оборачивать места, где потенциально может выполнится что-то вроде
null.visible = true;

Stanislavsky 02.03.2010 02:50

Спасибо.
Буду разбираться с try и catch...

А можно ли как-то убрать все обекты которые были загружены?
При загрузке функции, все объекты со сцены удаляются, и добавляются только нужные???

gloomyBrain 02.03.2010 03:07

Цитата:

А можно ли как-то убрать все обекты которые были загружены?
Код AS3:

while(container.numChildren) {
container.removeChildAt(0);
}


Stanislavsky 02.03.2010 03:23

Цитата:

Сообщение от gloomyBrain (Сообщение 890274)
Код AS3:

while(container.numChildren) {
container.removeChildAt(0);
}


а можно в двух словах, как этим пользоваться?
Я вставил в начало функции, так ошибка
1119 Оператор Delete не поддерживается операндом типа %1.

gloomyBrain 02.03.2010 03:31

Цитата:

Оператор Delete не поддерживается операндом типа %1.
И причем тут приведенный код?
container - то, из чего удаляем
что еще объяснить - я не знаю =)

Stanislavsky 02.03.2010 03:48

Я пытаюсь сделать следующее: При загрузке этой функции во второй раз, удалить объект textDe который загружен addChild в функциии pageFirma. (Вернуться в меню т.с.)
Код AS3:

private function pageHome(event:Event=null):void
        {
 
                startMenu = new mc_Menu();
                startMenu.x = 0;
                startMenu.y = 120;
                addChild(startMenu); // Добавляем меню и картинку
 
                var but01:MovieClip = startMenu.getChildByName('btn_01') as MovieClip; // Присвоим переменным имена кнопок
                var but02:MovieClip = startMenu.getChildByName('btn_02') as MovieClip;
                var but03:MovieClip = startMenu.getChildByName('btn_03') as MovieClip;
                var but04:MovieClip = startMenu.getChildByName('btn_04') as MovieClip;
 
                but01.addEventListener(MouseEvent.CLICK, pageFirma); //Слушатели для кнопок меню
                but02.addEventListener(MouseEvent.CLICK, pageProjects);
                but03.addEventListener(MouseEvent.CLICK, pageLeistung);
                but04.addEventListener(MouseEvent.CLICK, pageSend);
 
                TransitionManager.start(startMenu, {type:Fade, direction:Transition.IN, duration:3, easing:Strong.easeOut}); //планое появление элементов
 
                if (textDe != null)
                {
                        textDe.visible = false;
                }
                if (contForm != null)
                {
                        contForm,visible = false;
                }
}

Можно ли избавиться от всех этих visible = false с помощью Вашего кода?


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

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