Правый щелчок мыши по событию - PullRequest
0 голосов
/ 16 сентября 2011

Я пытался исправить ошибку, в течение последнего часа, и я просто не мог.

Ошибка:

Если вы нажмете левой кнопкой мыши и не отпустите ее, а затем нажмите правой кнопкой мыши(появляется контекстное меню), а затем снова щелкните левой кнопкой мыши, первое действие «перетаскивания» никогда не отменяется.

Как будто мне нужно сделать так, чтобы мой щелчок правой кнопкой мыши сказал: «эй, щелчок левой кнопкой мыши, ваша работа выполнена,теперь ты можешь идти домой ".

Но я не мог найти способ.

1 Ответ

3 голосов
/ 16 сентября 2011

Мое решение - прислушиваться к движению мыши на сцене и проверять MouseEvent.buttonDown. Если значение равно false, остановите перетаскивание:

protected function stageMouseMoveHandler(event:MouseEvent):void
{
    if (!event.buttonDown)
    {
        myComponent.stopDrag();
    }
}

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

...