Ошибка мыши при щелчке правой кнопкой мыши

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

Ошибка заключается в следующем:

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

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

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

1 ответ

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

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

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

Другие вопросы по тегам