получить ролик поверх всего остального - PullRequest
0 голосов
/ 18 октября 2010

У меня есть куча видеоклипов на сцене, и некоторые из них вложены в другие, я хотел бы, чтобы один из них был помещен поверх всего остального на сцене, когда я начинаю его перетаскивать.Кто-нибудь знает, как поместить вложенный мувиклип поверх родителей и т. Д.?

Ответы [ 3 ]

4 голосов
/ 18 октября 2010

вершина всего остального на сцене:

stage.addChild(target);

предупреждение из документа AS3:

Команда stage.addChild () может вызвать проблемы с опубликованным SWF файл, включая проблемы безопасности и конфликты с другими загруженными SWF файлы. В экземпляре среды выполнения Flash только одна сцена, нет независимо от того, сколько SWF-файлов вы загружаете во время выполнения. Итак, как правило, объекты вообще не должны добавляться в рабочую область напрямую. Единственный Объект, который должна содержать сцена, является корневым объектом. Создать DisplayObjectContainer для хранения всех элементов на дисплее список. Затем, если необходимо, добавьте этот экземпляр DisplayObjectContainer в Сцена.

4 голосов
/ 18 октября 2010

Вы можете иметь верхний слой и нижний слой, когда вы хотите добавить дочерний элемент поверх всего остального, просто добавьте дочерний элемент в верхний слой.Таким образом, вам не нужно выяснять родительскую позицию, просто держите этот слой сверху для этой конкретной цели.

var topLayer:Sprite = new Sprite();
var bottomLayer:Sprite = new Sprite();
var childMc:MovieClip; // the mc you want to have on top

//somewhere in your code...
childMc.addEventListener(MouseEvent.MOUSE_DOWN , childMcMouseDownListener );

addChild( bottomLayer );
addChild( topLayer );

//add everything to the bottom layer
//leave the topLayer empty until you add the child mc
//add the following code in your MouseDown Listener

function childMcMouseDownListener(event:MouseEvent ):void
{
   topLayer.addChild( event.currentTarget );
}
0 голосов
/ 18 октября 2010

Предположим, что Container - это ваш родительский мувиклип, и у него много потомков. Теперь ваши свойства target и currentTarget зависят от того, к какому объекту прикреплен слушатель и сколько вложенных вами мувиклипов.в моем случае Контейнер - это ваш родительский мувиклип, имеющий двух или более детей.

Container.addEventListener(MouseEvent.MOUSE_DOWN, pickUp); 

public function pickUp(param1:MouseEvent) : void
{
    var objectToDrag =  param1.target; 
    Container.setChildIndex(param1.target,Container.numChildren-1);
    objectToDrag.startDrag(true);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...