Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Как выгрузить клип? (http://www.flasher.ru/forum/showthread.php?t=152316)

Televizeur 15.03.2011 23:56

Как выгрузить клип?
 
У меня есть три презентации в разных файлах и мне надо сделать для них общее меню отдельным файлом. В главном меню я делаю кнопку (link_1) и по её нажатии подгружается внешний файл 1.swf
А выгрузить его, чтобы опять попасть в главное меню не получается.
Пишу в главном меню такой код:
Код AS1/AS2:

var mcl:MovieClipLoader = new MovieClipLoader();
link_1.onPress = function(){
        mcl.loadClip("swfs/1.swf", 1);
};

Файл подружается.
А как бы мне его теперь выгрузить?

Выгрузить его получается только кнопкой, расположенной в главном меню. Но проблема в том, что подгружаемый файл имеет непрозрачный фон, соответственно, выгружающую кнопку не видно.

mooncar 16.03.2011 00:03

Расположите кнопки меню выше по глубине, чем контейнеры для загрузки (то есть link_1 и остальные навигационные элементы должны быть выше, чем mc1 и прочие контейнеры, если они есть)

Televizeur 16.03.2011 00:19

Так я так и пробовал. Сделал слой с выгружающей кнопкой выше слоя с кодом. А она всё равно под клипом находится.

mooncar 16.03.2011 00:21

Цитата:

Сообщение от Televizeur (Сообщение 980766)
Так я так и пробовал. Сделал слой с выгружающей кнопкой выше слоя с кодом. А она всё равно под клипом находится.

Где находится код - не имеет значения.
Имеет значение - где находится контейнер для загрузки по отношению к кнопкам.

Стоп. Что же я проглядел-то.
Вы куда грузите?
UPD. У вас нет контейнера. Загрузка на _root идет, на 1-ю глубину, потому загруженное окажется всегда выше всего нарисованного в авторской среде. Вам нужно создать программно или нарисовать пустой мувик-контейнер для загрузки, ниже, чем кнопки управления.
Код AS1/AS2:

mcl.loadClip("swfs/1.swf", container_mc);


Televizeur 16.03.2011 00:28

Как-то это всё немного сложно. А нельзя вырубающую кнопку сделать в подгружаемом клипе? Так логичней.
А то сейчас получается, что кнопка, которая выгружает клип находится в главном меню.

mooncar 16.03.2011 00:48

А что тут сложного или нелогичного? Обычная схема: навигационные элементы в общей оболочке и контейнер для загрузки контента. Гораздо логичней иметь для выгрузки управляющий элемент в основном ролике - мало ли что там в загружаемом будет?

Но как хотите (Я же не знаю ваших задумок и обстоятельств).
Можно и по-вашему.
Рисуете в подгружаемом ролике кнопку и назначаете ей обработчик:
Код AS1/AS2:

unload_btn.onRelease = function  () 
{
        this._parent.unloadMovie();
        //this._parent указывает на контейнер основного ролика, в кот.загрузили данный ролик:
        //(this - указывает на кнопку, а _parent - ее родитель - это данный ролик, или контейнер
        //в основном ролике, куда грузили, что по сути одно и то же
};

Код пишется в кадре загружаемого ролика.

PS. Только не забудьте создать для загрузки контейнер в основном ролике, ниже, чем кнопки навигации. Так лучше и проще.
Ведь при такой записи
Код AS1/AS2:

mcl.loadClip("swfs/1.swf", 1);

загрузка происходит на 1-ю глубину основного ролика, и вам придется это учитывать с точки зрения размещения по глубинам остального содержания.
И имейте ввиду, что "глубины", о которых идет тут речь - это не то же самое, что "слои" в среде разработки, хотя определенная связь есть (связанная с порядком наложения объектов по глубинам при компиляции).

Televizeur 16.03.2011 09:57

Спасибо большое, буду пробовать!

Добавлено через 25 часов 53 минуты
Всё отлично работает, только возникла проблема.
При выводе на плазму появился следующий глюк. Открывается главное меню (файл Interface.exe). Далее идем по ссылке, открывается файл 1.swf. А когда хотим вернуться на главное меню и нажимаем кнопку «главное меню» то появляется черный экран. Как будто ссылка битая. Причём, на ноутбуке все работает и глюк только при выводе на плазменную панель. С чем это может быть связано?


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

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