проверить, если объект захвачен - PullRequest
0 голосов

Я просто хотел узнать, возможно ли проверить в событии мыши, захвачен ли объект в Action Script или нет.

Например: видеоплеер YouTube также имеет встроенную вспышку. и когда мы берем трек, он остается с указателем мыши и когда мы отпускаем его. он останавливается там, где мы его оставили.

Ответы [ 2 ]

0 голосов
/ 25 марта 2012

Нет способа определить, перемещается ли объект после вызова startDrag (). Вам придется установить логическое значение, которое отслеживает, когда вы начали перетаскивание.

Лично мне не нравится startDrag / stopDrag, и поэтому я им не пользуюсь. Но если вы начинаете, тогда startDrag / stopDrag может работать. Я полагаю, что плеер YouTube не использует эту функцию. Я опубликую свой метод здесь позже, когда у меня будет доступ к нему.

0 голосов
/ 25 марта 2012
// define lock on y-axis
var LOCKY:Number = target.y;

// MouseEvent.MOUSE_MOVE
stage.addEventListener(MouseEvent.MOUSE_MOVE, _mouseMove);
function _mouseMove(e:MouseEvent):void
{
    if(target.y != LOCKY) target.y = LOCKY;
}

// dragging
target.addEventListener(MouseEvent.MOUSE_DOWN, _mouseDown);
function _mouseDown(e:MouseEvent):void
{
    target.startDrag();
    target.addEventListener(MouseEvent.MOUSE_UP, _mouseUp);
}

// dropping
function _mouseUp(e:MouseEvent):void
{
    target.stopDrag();
    target.removeEventListener(MouseEvent.MOUSE_UP, _mouseUp);
}

Взят прямо отсюда: AS3 Как запустить перетаскивание только по оси x?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...