2016-10-13 00:16:48 点击量:7 标签: 收藏本文
[AS3]as3下侦听键盘动作和鼠标动作的源代码示例
- package
- {
- import flash.display.Stage;
- import flash.events.KeyboardEvent;
- import flash.ui.Keyboard;
- import flash.events.MouseEvent;
- /**
- * CuPlayer.com处理玩家输入类---侦听键盘和鼠标
- */
- public class UserInputHandler
- {
- public static var keyRight:Boolean;
- public static var keyLeft:Boolean;
- public static var keyForward:Boolean;
- public static var keyBackward:Boolean;
- public static var mouseDown:Boolean;
- public function UserInputHandler(stage:Stage)
- {
- //CuPlayer.com侦听玩家键盘和鼠标事件
- stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
- stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
- stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
- stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
- }
- private function keyDownHandler(e:KeyboardEvent):void
- {
- switch(e.keyCode)
- {
- case "W".charCodeAt():
- case Keyboard.UP:
- UserInputHandler.keyForward = true;
- UserInputHandler.keyBackward = false;
- break;
- case "S".charCodeAt():
- case Keyboard.DOWN:
- UserInputHandler.keyBackward = true;
- UserInputHandler.keyForward = false;
- break;
- case "A".charCodeAt():
- case Keyboard.LEFT:
- UserInputHandler.keyLeft = true;
- UserInputHandler.keyRight = false;
- break;
- case "D".charCodeAt():
- case Keyboard.RIGHT:
- UserInputHandler.keyRight = true;
- UserInputHandler.keyLeft = false;
- break;
- }
- }
- private function keyUpHandler(e:KeyboardEvent):void
- {
- switch(e.keyCode)
- {
- case "W".charCodeAt():
- case Keyboard.UP:
- UserInputHandler.keyForward = false;
- break;
- case "S".charCodeAt():
- case Keyboard.DOWN:
- UserInputHandler.keyBackward = false;
- break;
- case "A".charCodeAt():
- case Keyboard.LEFT:
- UserInputHandler.keyLeft = false;
- break;
- case "D".charCodeAt():
- case Keyboard.RIGHT:
- UserInputHandler.keyRight = false;
- break;
- }
- }
- private function mouseDownHandler(e:MouseEvent):void
- {
- mouseDown = true;
- }
- private function mouseUpHandler(e:MouseEvent):void
- {
- mouseDown = false;
- }
- }
- }
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室