![]() |
|
||||||||||
|
|||||
|
[+4 24.01.09]
Регистрация: Jan 2009
Сообщений: 25
|
создаём кучу мувиков следующим образом (см. ниже) в рабочей области, далее над кликнутым мувиком можно поработать, масштабировать, вращать и т.д. Сложность возникла с виртуальными слоями. Цели следующие:
1. чтобы при клике на btn_position_down мувик просто уходил на низший слой, а при клике на btn_position_up мувик становился на передний план. или 2. чтобы при клике на btn_position_down мувик спускался на 1 слой ниже, а при клике на btn_position_up мувик поднимался на 1 слой выше на правильном ли я пути вообще, может подскажет кто??? Заранее благодарен ![]() var i:Number=0; currentThumb.onRelease = function(){ while (image_mc_2.getInstanceAtDepth(i) != undefined) { i++; } currentImage = image_mc_2.createEmptyMovieClip("imagenail"+i,i); var mclListener:Object = new Object(); mclListener.onLoadInit = function(target_mc:MovieClip) { target_mc.onPress = function() { this.startDrag(); ///////////// btn_scale_plus.onRelease = function() { target_mc._xscale = target_mc._yscale += 1; } btn_scale_minus.onRelease = function() { target_mc._xscale = target_mc._yscale -= 1; } btn_rotate_left.onRelease = function() { target_mc._rotation-= 1; } btn_rotate_right.onRelease = function() { target_mc._rotation+= 1; } btn_delete.onRelease = function() { target_mc.removeMovieClip(); } btn_position_down.onRelease = function() { //что здесь делать??? target_mc.swapDepths(); trace(target_mc.getDepth()); } btn_position_up.onRelease = function() { //что здесь делать??? target_mc.swapDepths(); trace(target_mc.getDepth()); } ////////////// } target_mc.onRelease = function() { his.stopDrag(); } trace(target_mc.getDepth()); } var image_mcl:MovieClipLoader = new MovieClipLoader(); image_mcl.addListener(mclListener); image_mcl.loadClip(baseurl + this.IMAGE, currentImage); } |
|
|||||
|
[+4 24.01.09]
Регистрация: Jan 2009
Сообщений: 25
|
да я понимаю, что номер глубины )))
вот только глубины постоянно меняются, может подгрузиться ещё мувик,может удалиться,можно его переместить назад, вперёд, короче нужна система, как за этим всем уследить. |
|
|||||
|
.
|
Ищите глубину залегания следующего мувика перебором глубин. Вниз, к нулю: depth от this.currentMC.getDepth() - 1 до 0. Вверх, до высочайшего мувика: depth от this.currentMC.getDepth() + 1 до this.getNextHighestDepth(). Нашли глубину? Делайте this.currentMC.swapDepths(depth);
|
|
|||||
|
Создайте массив
запихивайте туда все мувики при удалении мувика - стирайте элемент массива. При добавлении - записывайте а дальше - можно пройтись по массиву циклом и сделать примерно вот так: то есть поставить мувик на ту глубину, которая равна его месту в массиве ЗЫ это дает неплохие возможности для сортировки порядка отображения мувиков в зависимости от их свойств. то есть, например, задаем мувику новое свойство: exampleMC_0.pictureName = "PINK - stupid girl" exampleMC_1.pictureName = "flasher.ru - gloomyBrain rules" exampleMC_2.pictureName = "jet - skin and bones" ЗЗЫ во время удаления мувика со сцены и из массива, делайте это так, чтобы не оставалось "дырок", то есть нулевых элементов
__________________
...вселенская грусть |
|
|||||
|
[+4 24.01.09]
Регистрация: Jan 2009
Сообщений: 25
|
всем огромное спасибо, сложновато всё получается, ограничюсь пока этим:
1. чтобы при клике на btn_position_down мувик просто уходил на низший слой, а при клике на btn_position_up мувик становился на передний план. Помогли mx.behaviors.DepthControl.sendToBack(this); и mx.behaviors.DepthControl.bringToFront(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:47. |
|
|
« Предыдущая тема | Следующая тема » |
|
|