Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Релоад мувика, как сделать? 
:(
    Опции темы
ProgrammerBOTANIK
  Дата 29.7.2005, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 706
Регистрация: 27.4.2004

Репутация: 0
Всего: 0



Доброго времени суток! smile

Загружаю мувик, например 001.swf в другой мувик Osnovnoy_Muvik.swf при помощи кода:

Код

on (press) {
loadMovieNum("001.swf", 1);
}


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

Мне пришел в голову только такой вариант:

Код

on (press) {
unloadMovieNum(0);
unloadMovieNum(1);
unloadMovieNum(2);
unloadMovieNum(3);
unloadMovieNum(4);
unloadMovieNum(5);
loadMovieNum("Osnovnoy_Muvik.swf", 0);
loadMovieNum("001.swf", 1);
loadMovieNum("002.swf", 2);
loadMovieNum("003.swf", 3);
loadMovieNum("004.swf", 4);
loadMovieNum("005.swf", 5);
}


Будет ли это работать?
Как сделать лучше?


--------------------
Сострадание со стороны жизни выражается в смерти
PM MAIL   Вверх
AlDev
Дата 30.7.2005, 02:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный идиотъ
***


Профиль
Группа: Участник Клуба
Сообщений: 1927
Регистрация: 17.4.2005
Где: Irk, rus

Репутация: 9
Всего: 50



Код

function loadMovies(target_mc:MovieClip,urls:Array):Void
{
var mcs:Array = new Array();
var mcls:Array = new Array();
var lists:Array = new Array();
for (var i:Number = 0;i<url.length;i++)
{
  if (target_mc['movie_'+i.toString()]!=undefined)
  {
    target_mc['movie_'+i.toString()].removeMovieClip();
  }
  mcs[i] = target_mc.createEmptyMovieClip('movie_'+i,target_mc.getNextHighestDepth());
  mcs[i]['index'] = i;
  mcls[i] = new MovieClipLoader();
  lists[i] = new Object();
  lists[i].onLoadInit = function(target:Object)
  {
    trace ('Movie loaded: '+target['index']);
  }
  mcls[i].addListener(lists[i]);
  mcls[i].loadClip(mcs[i],urls[i]);
}

usage:
Код

some_movie.onPress = function()
{
  loadMovies(_root,['001.swf','002.swf','003.swf','004.swf','005.swf']);
}

PM MAIL WWW ICQ YIM MSN   Вверх
ProgrammerBOTANIK
Дата 31.7.2005, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 706
Регистрация: 27.4.2004

Репутация: 0
Всего: 0



Alex Batsuev - что куда нужно вставлять? smile


--------------------
Сострадание со стороны жизни выражается в смерти
PM MAIL   Вверх
AlDev
Дата 1.8.2005, 02:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный идиотъ
***


Профиль
Группа: Участник Клуба
Сообщений: 1927
Регистрация: 17.4.2005
Где: Irk, rus

Репутация: 9
Всего: 50



это всё в основной мувик.
метод loadMovies(target_mc:MovieClip,urls:Array)
грузит всё в target_mc, urls - массив адресов клипов.
То есть ты просто передаёшь ему адреса клипов, а он подгружает клипы куда надо.

Лучше для простоты обращения сделать так:
Код

function loadMovies(target_mc:MovieClip,urls:Array):Array
{
var mcs:Array = new Array();
var mcls:Array = new Array();
var lists:Array = new Array();
for (var i:Number = 0;i<url.length;i++)
{
  if (target_mc['movie_'+i.toString()]!=undefined)
  {
    target_mc['movie_'+i.toString()].removeMovieClip();
  }
  mcs[i] = target_mc.createEmptyMovieClip('movie_'+i,target_mc.getNextHighestDepth());
  mcs[i]['index'] = i;
  mcls[i] = new MovieClipLoader();
  lists[i] = new Object();
  lists[i].onLoadInit = function(target:Object)
  {
    trace ('Movie loaded: '+target['index']);
  }
  mcls[i].addListener(lists[i]);
  mcls[i].loadClip(mcs[i],urls[i]);
  return mcs;
}

т.е. метод возвращает массив клипов.

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

Это сообщение отредактировал(а) Alex Batsuev - 1.8.2005, 02:36
PM MAIL WWW ICQ YIM MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Flash"
AlDev
SoWa
  • Если вы хотите предложить кому-либо работу, то пишите или в личку, или оставляйте сообщения в специально предназначеном для этого форуме "Объявления о найме специалистов"
  • Один вопрос - одна тема. Не надо переходов от одного вопроса к другому.
  • Если вы хотите показать какой-нибудь ваш мульт, причём показать, а не предоставить исходник, то вам сюда
  • Вопросы про программирование на ActionScript 1,2 (Flash 8 и более ранние версии) пишите в форуме ActionScript 1,2
  • Вопросы по разработке интернет-приложений на Flex и вопросы по MXML пишите в раздел Flex
  • Смотрим в будущее. ActionScript 3 обсуждается в форуме ActionScript 3
  • Новости из мира Flash.
  • New! [code=ascript][/code] - подсветка ActionScript + wikipedia help

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, AlDev, SoWa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Flash | Следующая тема »


 




[ Время генерации скрипта: 0.0429 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.