![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2006
Сообщений: 56
|
Ситуация такая:
Есть мувик CatalogPreview, а в нем smallbox. Есть функция загрузки каталога картинок, которая для выбранного списка файлов с картинками выполняет следующие действия:
Если начать с каталога№3, то все работает как надо: сначала появляются все 4 картинки, а затем количество smallbox'ов меняется в зависимости от выбранного каталога. Но если начать, например, с каталога№2, то сначала появится одна картинка, а затем из выбранного каталога будет вместо этой загружаться только первый элемент, т.е. smallbox'ы не хотят дублироваться в большем количестве. В чем загвоздка? //**** ф-ция загрузки нового каталога *****
function LoadCatalog(catName){
ind=1;
sumLoad = 0;
sumTotal = 0;
for (i=0;i<ImageList.length;i++){
if (Imagelist[i].catalog==catName){
LoadPreview(Imagelist[i].file);
}
}
_root.CatalogPreview.onEnterFrame = function() {
sumLoad = this.smallbox.getBytesLoaded();
sumTotal = this.smallbox.getBytesTotal();
for (j=2;j<ind;j++){
sumLoad += this["smallbox"+j].getBytesLoaded();
sumTotal += this["smallbox"+j].getBytesTotal();
}
if (sumTotal>0 && sumLoad>=sumTotal){
delete this.onEnterFrame;
ImageSmallGo(this.smallbox);
for (j=2;j<ind;j++){
ImageSmallGo(this["smallbox"+j]);
}
}
};
}
//**** ф-ция загрузки Preview ***************************
function LoadPreview(im){
bx = -139.1;
by = -30.7;
trace("ind="+ind);
if (ind>1){
_root.CatalogPreview.smallbox.duplicateMovieClip("smallbox"+ind,ind,{_x:bx+60*(ind-1)-25,_y:by-25});
trace("create "+"smallbox"+ind+", x:"+_root.CatalogPreview["smallbox"+ind]._x);
_root.CatalogPreview["smallbox"+ind].loadMovie(im);
}
else{
with (_root.CatalogPreview.smallbox){
_x = bx - 25;
_y = by - 25;
loadMovie(im);
}
}
ind++;
}
//***** ф-ция очистки Preview ****************************
function ClearPreview(){
delete _root.CatalogPreview.smallbox.onEnterFrame;
_root.CatalogPreview.smallbox.unload();
for (j=2;j<ind;j++){
trace("remove "+"smallbox"+j);
delete root.CatalogPreview["smallbox"+j].onEnterFrame;
_root.CatalogPreview["smallbox"+j].unloadMovie();
}
}
//*************************************************
function changecatalog(){
if (first_click){
first_click = false;
_root.currentcatalog.removeItemAt(0);
}
else
ClearPreview();
LoadCatalog(_root.currentcatalog.getSelectedItem().label);
}
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 56
|
Отвечаю на свой вопрос сама: оказывается duplicateMovieClip не дружит с мувиками, к которым применялся loadMovie(), и unload() не помогает.
В моем случае, видно, придется сразу надублировать "заготовок" в количестве, равном количеству картинок в самом большом каталоге. Может кто-нибудь все-таки знает лекарство против этого недостатка duplicateMovieClip??? |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:58. |
|
|
« Предыдущая тема | Следующая тема » |
|
|