Проблема, связанная с глубиной для ActionScript 3 - PullRequest
0 голосов
/ 09 июня 2011

У меня проблемы с управлением глубиной моих видеоклипов.

У меня есть функция startDrag() и функция stopDrag().Всякий раз, когда я переворачиваю другой MC, я хочу, чтобы глубина этого объекта изменялась на 1+ объекта, на который он перевернулся (извиняюсь, если мой английский плохой)

Может ли кто-нибудь дать мне толчок в правильном направлении?

РЕДАКТИРОВАТЬ: Это так далеко, как я получил, но cIndex возвращает глубину объекта, который в настоящее время перетаскивается;не тот объект, над которым он зависает ... Есть ли способ получить эту глубину?

mc.addEventListener(MouseEvent.MOUSE_OVER, objectFront);

function objectFront(e:Event):void{
    cIndex_t3 = getChildIndex(DisplayObject(e.currentTarget))
    trace("ROLLOBJ: " + e.target.name + " " + cIndex_t3);
    addChild(DisplayObject(e.currentTarget));
}

Ответы [ 3 ]

0 голосов
/ 09 июня 2011

Если вы действительно хотите, чтобы объект равнялся +1 объекту, по которому он перевернулся, тогда используйте getChildIndex () для перетаскиваемого объекта и setChildIndex () для перетаскиваемого объекта.

Однако, если вы просто хотите, чтобы перетаскиваемый объект находился сверху, тогда самый простой способ - просто использовать addChild () для него. Вы можете использовать addChild (), даже если объект уже является дочерним, и это приведет его к вершине стека.

0 голосов
/ 15 февраля 2015

Вы должны использовать getChildIndex и setChildIndex для связанных с глубиной операций экранных объектов.

mc.addEventListener(MouseEvent.MOUSE_OVER, objectFront);

function objectFront(e:Event):void
{
   //Set display object child index on top in container
   e.target.parent.setChildIndex(e.target as MovieClip, e.target.parent.numChildren - 1);
}
0 голосов
/ 09 июня 2011

Похоже, вы хотите использовать getChildIndex и setChildIndex для получения и изменения глубины экранных объектов.

Проверьте этот вопрос для получения дополнительной информации.

...