as3 如何判断同时按下两个键

 

AS3在常规组合键的判断上更方便了 Shift Ctrl Alt 都可以直接得到状态
A+B+C这样的组合还得自己写方法,可以在KEYDOWN时它按下的键放入数组,KEYUP时删除。然后读取数组知道这些键是否已经按下。

 

var key_obj:Object=new Object;
function onKeyDownHandler(_evt:KeyboardEvent ):void {
        var _code:String =String.fromCharCode (_evt.keyCode);
        key_obj[_code]=true;
        _evt.ctrlKey&&trace("Ctrl键被按下");
        _evt.altKey&&trace("Alt键被按下");
        _evt.shiftKey&&trace("Shift键被按下");
        for (var p:String in key_obj) {//用于其它字母和数字鍵
                trace("当前按下的键有:"+p);
        }
}
function onKeyUpHandler(_evt:KeyboardEvent ):void {
        var _code:String =String.fromCharCode (_evt.keyCode);
        key_obj[_code]=null;
}
stage.addEventListener(KeyboardEvent.KEY_UP ,onKeyUpHandler);
stage.addEventListener(KeyboardEvent.KEY_DOWN ,onKeyDownHandler);

转载于:https://my.oschina.net/u/263424/blog/633377

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值