NeverSummer
19.10.2008, 21:58
Посоветуйте плиз! – не работает как надо onRelease – иконки (thumb) рисуются, но при нажатии на иконку показывается только последняя картинка (pic_name_arr[j]) – т.е непонятно почему не верно работает обработчик onRelease… Как я понимю я формирую массив объектов MovieClip и каждому элементу массива присвоен свой обработчик события onRelease. Т.е при событии onRelease над каждым конкретным thumb должна вызываться определенная функция обработчик и показыватся соответствующая картинка pic_name_arr[j] но показывается только самая последняя. Не понимаю почему - плиз хелп.
//Constants
IMAGE_DIRECTORY = "./img/";
X_FIRST_THUMB = 520;
Y_FIRST_THUMB = 294;
SPAN_BETWEEN_THUMBS = 4;
THUMB_WIDTH = 35;
var main_pic_mc:MovieClip = createEmptyMovieClip("main_pic_mc", getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
var thumb_arr_mc:Array = new Array(NUMBER_OF_PICTURES);
var pic_name_arr:Array = new Array( 'flash_main_page_pic_01.jpg', 'flash_main_page_pic_02.jpg', 'flash_main_page_pic_03.jpg', 'flash_main_page_pic_04.jpg', 'flash_main_page_pic_05.jpg', 'flash_main_page_pic_06.jpg' );
var thumb_name_arr:Array = new Array( 'flash_main_page_thumb_01.jpg', 'flash_main_page_thumb_02.jpg', 'flash_main_page_thumb_03.jpg', 'flash_main_page_thumb_04.jpg', 'flash_main_page_thumb_05.jpg', 'flash_main_page_thumb_06.jpg' );
///////////////////////////////////////////////////////////////////////////////////////
//
function MakeMenu( pic_num:Number )
{
var j:Number = 0;
var k:Number = -1;
for(i = 0; i < pic_name_arr.length; i++)
{
k++;
if(i == pic_num)
{ j++; k--; continue; }
if(j > pic_name_arr.length)
j = 0;
thumb_arr_mc[k] = this.createEmptyMovieClip("thumb_name_container_" + j, getNextHighestDepth());
thumb_arr_mc[k]._x = X_FIRST_THUMB + (SPAN_BETWEEN_THUMBS * k) + (k * THUMB_WIDTH);
thumb_arr_mc[k]._y = Y_FIRST_THUMB;
thumb_arr_mc[k].createEmptyMovieClip("jpeg_container", 0);
thumb_arr_mc[k].jpeg_container.loadMovie(IMAGE_DIRECTORY+thumb_name_arr[j]);
var strTemp:String = IMAGE_DIRECTORY+pic_name_arr[j];
thumb_arr_mc[k].onRelease = function()
{
mcLoader.loadClip( strTemp, main_pic_mc );
}
j++;
} //for
}
MakeMenu();
//Constants
IMAGE_DIRECTORY = "./img/";
X_FIRST_THUMB = 520;
Y_FIRST_THUMB = 294;
SPAN_BETWEEN_THUMBS = 4;
THUMB_WIDTH = 35;
var main_pic_mc:MovieClip = createEmptyMovieClip("main_pic_mc", getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
var thumb_arr_mc:Array = new Array(NUMBER_OF_PICTURES);
var pic_name_arr:Array = new Array( 'flash_main_page_pic_01.jpg', 'flash_main_page_pic_02.jpg', 'flash_main_page_pic_03.jpg', 'flash_main_page_pic_04.jpg', 'flash_main_page_pic_05.jpg', 'flash_main_page_pic_06.jpg' );
var thumb_name_arr:Array = new Array( 'flash_main_page_thumb_01.jpg', 'flash_main_page_thumb_02.jpg', 'flash_main_page_thumb_03.jpg', 'flash_main_page_thumb_04.jpg', 'flash_main_page_thumb_05.jpg', 'flash_main_page_thumb_06.jpg' );
///////////////////////////////////////////////////////////////////////////////////////
//
function MakeMenu( pic_num:Number )
{
var j:Number = 0;
var k:Number = -1;
for(i = 0; i < pic_name_arr.length; i++)
{
k++;
if(i == pic_num)
{ j++; k--; continue; }
if(j > pic_name_arr.length)
j = 0;
thumb_arr_mc[k] = this.createEmptyMovieClip("thumb_name_container_" + j, getNextHighestDepth());
thumb_arr_mc[k]._x = X_FIRST_THUMB + (SPAN_BETWEEN_THUMBS * k) + (k * THUMB_WIDTH);
thumb_arr_mc[k]._y = Y_FIRST_THUMB;
thumb_arr_mc[k].createEmptyMovieClip("jpeg_container", 0);
thumb_arr_mc[k].jpeg_container.loadMovie(IMAGE_DIRECTORY+thumb_name_arr[j]);
var strTemp:String = IMAGE_DIRECTORY+pic_name_arr[j];
thumb_arr_mc[k].onRelease = function()
{
mcLoader.loadClip( strTemp, main_pic_mc );
}
j++;
} //for
}
MakeMenu();