Поймать правой кнопкой мыши AS3 - PullRequest
2 голосов
/ 16 января 2011

Можно ли поймать щелчок правой кнопкой внутри флэш-памяти (AS3)?

Нет JQuery / JavaScript.

Мне нужно приостановить игровой процесс при обнаружении щелчка правой кнопкой мыши, поэтому я не так сильно хочу отключить контекстное меню, как просто хочу сказать, что произошел щелчок правой кнопкой мыши. Есть ли EventListener, который я могу добавить? Есть другие идеи?

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

Ответы [ 3 ]

1 голос
/ 19 января 2011

Как и сообщал weltraumpirat, единственный способ перехватить событие «Правый клик» - это если вы создаете свое приложение для развертывания в качестве приложения AIR, если хотите, чтобы оно было встроено в архитектуру Flash Platform;в противном случае вам понадобится использовать другой язык в сочетании с Flash для захвата события (например, JavaScript).

FYI, вот справочник API для класса MouseEvent, который содержит информацию о событии RightClick: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/MouseEvent.html

1 голос
/ 16 января 2011

Существует только два способа записи события щелчка правой кнопкой мыши:

  1. Для приложения веб-браузера: Использовать JavaScript . Вы не можете сделать это непосредственно во Flash, потому что вы не можете отключить контекстное меню.

  2. Для настольного приложения: разверните как приложение AIR. В AIR встроено RIGHT_CLICK MouseEvent .

Нет третьего шага. (

P.S .: То есть, если menuSelect действительно не работает для вас - в документации говорится, что он срабатывает до , когда открывается меню.

0 голосов
/ 07 марта 2014

без JavaScript! Да, работает нормально.

Я говорю вам: Если вы используете Flex- или Flash-Builder, вам нужно добавить правый клик из корневого тега приложения: пример: <s:Applikation .... RightClick="appRightClick (event)"> Чем вам нужно отключить контекстное меню на ноль.

И вы добавляете bordercontainer или view, затем добавляете rightClick с помощью любой функции rightClick, чем вам необходимо добавить меню из mx.controls.Menu, а menu1 необходимо прослушивать rightClick для appRightClick (событие)

Поскольку он не доступен из контекстного меню Flash Player.

Надеюсь, потому что ваше flash-приложение работает для rightClick:)

...