PDA

Просмотр полной версии : Depth|getNextHighestDepth()


sweet_fighter
08.10.2008, 22:53
Доброго времени суток!
Возникла проблемка. Вкратце:
Есть 2 маленьких изображения, при клике на любое, выбраное увеличивается на всю флешку. А при клике опять же на нем, оно должно уменьшится до исходных размеров. Вот что бы увеличилось, все работает. А уменьшить никак не могу. Увеличеная картинка не активна и не является кнопкой. Трабл мне кажется где-то тут box.getNextHighestDepth()... Я перепробывал всякие варианты, никак =((
Подскажите что делаю не так.


//первое изображение
var container:MovieClip = createEmptyMovieClip("container", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
mcLoader.loadClip("1.jpg", container);
function onLoadInit(mc:MovieClip) {

mc.onRelease = function () {
var box:MovieClip = СreateEmptyMovieClip("box", 20);
var box_mc:MovieClipLoader = new MovieClipLoader();
box_mc.addListener(this);
box_mc.loadClip("big/1.jpg", box.getNextHighestDepth());

box.onRelease = function () {
removeMovieClip(box); }

}

//второе изображение
var container2:MovieClip = createEmptyMovieClip("container2", 2);
var mcLoader2:MovieClipLoader = new MovieClipLoader();
mcLoader2.addListener(this);
mcLoader2.loadClip("2.jpg", container2);
function onLoadInit(mc2:MovieClip) {

mc2.onRelease = function () {
var box:MovieClip = СreateEmptyMovieClip("box", 20);
var box_mc:MovieClipLoader = new MovieClipLoader();
box_mc.addListener(this);
box_mc.loadClip("big/2.jpg", box.getNextHighestDepth());

box.onRelease = function () {
removeMovieClip(box); }

}



Заранее спасибо.

Wolsh
08.10.2008, 23:22
Ого)
Ну смотрите. Загрузилась иконка, Вы назначили ей обработчик нажатия: создать лоадер и загрузить большую картинку. Причем листенером этому лоадеру назначили mc. Пока все отлично. А дальше? Что такое box_mc.loadClip("big/1.jpg", box.getNextHighestDepth());Вы даете урл, т.е. ОТКУДА грузить, но вместо того чтобы сказать КУДА грузить, Вы указываете глубину. При чем здесь глубина, откуда она взялась - непонятно. Вы запутались потому что пренебрегли суффиксами и написали _mc, т.е. мувиклип, суффиксом Лоадеру.
Дальше - зачем Вы назначали Листенер? Правильно, чтобы узнать, когда картинка загрузится. Где же обработчик onLoadInit? Его нет. Вы просто вешаете дальше кнопочное событие на ПУСТОЙ клип box. Ну и, собственно, куда бы Вы не жали, клипа box там нет - его ширина и высота равны нулю. Вы ведь даже не загружали в него картинку - она, похоже, загрузилась просто в рут. Но даже если бы и в box загрузилась - снесла бы все ваши обработчики, как относящиеся к тому, старому клипу box и не имеющие отношения к этому новому - картинке.