Просмотр полной версии : Копирование подгружаемого мувиклипа
Есть ли в Action Script 2 возможность скопировать динамически подгружаемый мувиклип? То есть например:
import flash.display.BitmapData;
this.createEmptyMovieClip("clip_mc",this.getNextHighestDepth());
clip_mc.loadMovie("1.swf");
this.createEmptyMovieClip("clip_copy_mc",this.getNextHighestDepth());
clip_copy_mc._x = 300;
var mcData:BitmapData = new BitmapData(100, 100);
mcData.draw(clip_mc);
clip_copy_mc.attachBitmap(mcData,_root.getNextHighestDepth());
Если не создавать динамически clip_mc, а нарисовать его на сцене, то все работает, а если же загружать в него, то нет.
Теперь собственно два вопроса:
1) Как скопировать?
2) Если нельзя, то как сделать что бы флеш брал подгружаемый файл (swf) из кеша?
Спасибо ;)!
1) В хелпе ясно написано, что нельзя дублировать
2) Гораздо сложней сделать, чтоб он не брал его из кэша :)
Ну то что в хелпе написано, что нельзя, это еще не значит что нельзя).
К второму вопросу, пример, когда у меня флеш ни в какую не хочет брать из кеша ни на сервере, ни локально:
var my_mcl:MovieClipLoader = new MovieClipLoader();
var myListener:Object = new Object();
my_mcl.addListener(myListener);
/*
... функции отслеживания степени загрузки файла...
*/
this.createEmptyMovieClip("clip_mc",this.getNextHighestDepth());
my_mcl.loadClip(loadSWF,clip_mc);
В переменную loadSWF при нажатии на пункт меню записывается имя файла, который надо подгрузить - 1.swf, 2.swf и т.д. Но каждый раз файл загружается заново. Или для каждого загружаемого файла нужно создавать свой контейнер?
Сколько же свф-файлов у Вас сейчас в кэше?
Вообщето это флеш сайт. Грузится основная флешка, в ней меню - 5 кнопок, при нажатии на пункт меню подгружается соответствющий swf-файл. Всего файлов 5. Размер 30-500 кб.
Вот только что очистил кеш, все равно не грузит. Браузеры IE и Mozzila последних версий.
Он грузится заново из кеша броузера. А продублировать с помощью BitmapData легче легкого.
Тольно надо дождаться загрузки -----> MovieClipLoader
Так все дальнейшие действия и происходят только после срабатывания myListener.onLoadInit. Можно примерчик с BitmapData? А берет может и из кеша, но траффик считает(
:) Я, собственно, имел ввиду, что если флэш каждый раз грузит файлы по-новой, в кэше их должно изрядное количество накопиться - Вы не находите? Но Вы смело обошли мой вопрос :) Очистили кэш и ДАЖЕ (!) теперь из него не грузится...
По битмапдате. Если речь о картинках - то да, а скриншоты с клипов Вам зачем? Если там анимация?
А если это, простите, ВАШ сайт - то что же Вы в библиотеки всё что нужно не запихаете?
Спасибо всем за участие, сделал проще).
Теперь гружу каждый раздел в свой контейнер, а потом делаю проверку на повторную загрузку, и если раздел уже загружен, просто показываю нужный.
В смысле запихать в библиотеки?
Да всё, проехали :)
Мне просто в голову бы не пришло, что нужно разделы сайта дублировать :)
для повторного показа. Я думал Вы какие-то клипы размножать хотите.
Можно примерчик с BitmapData?
Я в непонятке. У вас в первом посте примерчик. Битмапу можно клонировать, можно отрисовать в новую.
Та все, я уже понял, Битмап копирует изображение, я думал с его помощью можно скопировать весь мувиклип с анимацией.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.