Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   attach - remove HELP плз... (http://www.flasher.ru/forum/showthread.php?t=47590)

dtmax 04.08.2003 00:03

attach - remove HELP плз...
 
Привет, All!

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

Короче, надо сделать вот что:
У меня есть несколько клипов в библиотеке.
По нажатию кнопки из HTML-страницы нужно показывать один из этих клипов (в зависимости от того, какая кнопка нажата). Нужно сделать именно так, то есть кнопки не во флешке, а на странице.
Я делаю обработчики onclick для каждой из кнопок, и в этих обработчиках пишу: myMainClip.GotoFrame(n). Здесь n - номер фрейма в главной timeline.

В фрейме 0 у меня написано:
if(current_mc)
{
removeMovieClip(eval(current_mc)); //удаляется текущий клип
}
stop();

В фрейме 1:
current_mc="mc1";
attachMovie("movieclip1","mc1",1);
gotoAndPlay(1);

В фрейме 2:
current_mc="mc2";
attachMovie("movieclip2","mc2",1);
gotoAndPlay(1);

и так далее...

Я думаю, что оно должно работать так: после загрузки страницы - пусто. После нажатия первой кнопки - играется первый клип, потом он пропадает. После нажатия второй кнопки - играется второй клип, потом он пропадает.

А работает оно так:
после загрузки - пусто, как и предполагалось. после нажатия первой кнопки - первый клип играется, но не пропадает, и потом на нажатия кнопок - никакой реакции. аналогично и с другими кнопками...

В чем трабл - подскажите плз... Может, по другому вообще схему работы нужно сделать???

Заранее спасибо...

dtmax 04.08.2003 00:06

PS. Забыл еще сказать, что в последнем кадре клипов из библиотеки стоит stop();

Diomas 04.08.2003 23:56

Сразу оговоримся, нулевого кадра я во флеше не встречал, поэтому будем вести нумерацию кадров с единицы (вероятно, ты опечатался =)).

Кадр 1:
Код:

stop();
Кадр 2:
Код:

attachMovie("movieclip1","mc1",1);
gotoAndPlay(1);

Кадр 3:
Код:

attachMovie("movieclip2","mc2",1);
gotoAndPlay(1);

остальные кадры - соответственно.

В последних кадрах клипов библиотеки:
Код:

this.removeMovieClip();
Этого должно быть достаточно.

АХ ДА! Интересное название темы =). Ты бы запятую поставил, а то просьба "remove HELP плз..." ввела меня на некоторое время в заблуждение. =). Я, конечно, понимаю, что help "не идеален", но хотябы такой пусть будет =).

dtmax 05.08.2003 15:54

Diomas, спасибо за ответ...
С темой, действительно, протуканил немного ;)

В общем, сделал, как ты и сказал. После того, как клип из библиотеки проирался, он исчезает по this.removeMovieClip();

Но потом флешка перестает реагировать на нажатие кнопок из HTML... Не пойму, почему :(


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

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