是否可以在 Flash (AS3) 内单击鼠标右键?
没有 JQuery/JavaScript。
我需要在捕获到右键单击时暂停游戏,所以我不想禁用上下文菜单,因为我只想告诉发生了右键单击。有我可以添加的 EventListener 吗?还有其他想法吗?
更新:
我需要触发事件,因为它们实际上是右键单击,而不仅仅是在上下文菜单消失之后。
是否可以在 Flash (AS3) 内单击鼠标右键?
没有 JQuery/JavaScript。
我需要在捕获到右键单击时暂停游戏,所以我不想禁用上下文菜单,因为我只想告诉发生了右键单击。有我可以添加的 EventListener 吗?还有其他想法吗?
更新:
我需要触发事件,因为它们实际上是右键单击,而不仅仅是在上下文菜单消失之后。
只有两种方法可以捕获右键单击事件:
对于 Web 浏览器应用程序:使用 JavaScript。您不能直接在 Flash 中执行此操作,因为您不能禁用上下文菜单。
对于桌面应用程序:部署为 AIR 应用程序。AIR 内置了RIGHT_CLICK MouseEvent。
没有第三步。:(
PS:也就是说,如果menuSelect真的不适合你——文档说它是在菜单打开之前触发的。
正如 weltraumpirat 报告的那样,捕获右键单击事件的唯一方法是,如果您要构建应用程序以将其部署为 AIR 应用程序,并且您希望将其全部保留在 Flash 平台架构中;否则,您将需要结合 Flash 使用其他语言来捕获事件(即 JavaScript)。
仅供参考,这里是 MouseEvent 类的 API 参考,其中包含有关 RightClick 事件的信息:http: //help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/MouseEvent.html
没有Javascript!是的,它工作正常。
我告诉你:如果您使用 Flex- 或 Flash-Builder,则需要从根应用程序标签添加右键单击:示例:<s:Applikation .... RightClick="appRightClick (event)">
您需要将上下文菜单关闭为空。
并且您添加bordercontainer或视图而不是使用任何rightClick功能添加rightClick而不是您需要从mx.controls.Menu添加菜单并且menu1需要监听rightClick到appRightClick(事件)
因为它不能从 Flash Player 上下文菜单访问。
我希望它是因为您的 flash 应用程序适用于 rightClick :)