Форум 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=116282)

Antonio Lopez 25.09.2008 11:15

Копировать содержимое одного клипа в другое
 
Привет всем! Есть основной мувик и в нем есть клип Content, в который подгружаются внешние мувики. Когда внешний мувик проиграется, начинает загружаться другой (в этот же клип Content), появляется прелоадер, но все содержимое Content исчезает пока не загрузится мувик. Пробую так, чтобы загрузка шла в другой, а по прошествии загрузки, все содержимое перекопировалось бы. Вот в этом и вопрос.. как? я пробывал обысное "=", один раз нормально загружает, но последующие нет. пробывал duplicate, но не копируется внетренее содержимое.

iNils 25.09.2008 11:42

В ас2 можно только снять изображение с клипа с BitmapData и вставить это изображение в другое место, но это будет статика.
Клипы придется загружать заново.
А вот в ас3 можно перемещать содержимое из одного клипа в другое.

Antonio Lopez 25.09.2008 11:48

с ас3 не знаком. думаю может туда уже надо переходить.. пока решил проблему так, что последующие клипы накрывают предыдущий, которые потом удаляются

Antonio Lopez 25.09.2008 12:06

Вот простой код если кому понадобится
Код:

var Unital = {
        onLoadStart:function(){
                Content._alpha=100;
                aloader._alpha=100;
        },
        onLoadComplete:function(){
                aloader._alpha=0;
               
                Content = this.ClipToLoad;
               
                Content._alpha=100;
               
                if (Unital.i>1) removeMovieClip(eval("ClipToLoad"+(Unital.i-1)));

        },
        onLoadProgress:function(){
               
        },
        loadPage:function(path){
                if (!Unital.i) Unital.i = 0;
                Unital.i++;
                var loader:MovieClipLoader = new MovieClipLoader();
                _root.createEmptyMovieClip("ClipToLoad"+Unital.i, _root.getNextHighestDepth());
                this.ClipToLoad = eval("ClipToLoad"+Unital.i);
                this.ClipToLoad._x=0;
                this.ClipToLoad._y=0;
                this.ClipToLoad._alpha=0;
                Content._alpha=100;
               
                loader.addListener(Unital);
                loader.loadClip(path, this.ClipToLoad);
        }
}



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

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