在Flash AS3.0中如何同时按下两个键并且都起作用
4个回答
展开全部
展开全部
需要设定一个数组,存储这两个键是否按下,当判断都按下时,就做出相应的反应就可以了,思路是这样的,具体的要和你的源文件结合起来才可以。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按下不一定鼠标触发的事件,可以自己抛出按下事件,两个同时抛出,监听就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
const KEY_UP:uint=38;
const KEY_DOWN:uint=40;
const KEY_LIFT:uint=37;
const KEY_RIGHT:uint=39;
var speed:Number=5;
stage.addEventListener(KeyboardEvent.KEY_DOWN,keydown);
stage.addEventListener(KeyboardEvent.KEY_UP,keyup);
this.addEventListener(Event.ENTER_FRAME,test)
var key:Object=new Object();
function keydown(e:KeyboardEvent ){
key[e.keyCode]=true;
}
function keyup(e:KeyboardEvent ){
delete key[e.keyCode];
}
function test(e:Event)
{
if(key[KEY_UP]){
balloon.y-=speed;
}
if(key[KEY_DOWN]){
balloon.y+=speed;
}
if(key[KEY_LIFT]){
balloon.x-=speed;
}
if(key[KEY_RIGHT]){
balloon.x+=speed;
}
}
这是键盘控制balloon移动的代码,可以检测两个键斜移
const KEY_DOWN:uint=40;
const KEY_LIFT:uint=37;
const KEY_RIGHT:uint=39;
var speed:Number=5;
stage.addEventListener(KeyboardEvent.KEY_DOWN,keydown);
stage.addEventListener(KeyboardEvent.KEY_UP,keyup);
this.addEventListener(Event.ENTER_FRAME,test)
var key:Object=new Object();
function keydown(e:KeyboardEvent ){
key[e.keyCode]=true;
}
function keyup(e:KeyboardEvent ){
delete key[e.keyCode];
}
function test(e:Event)
{
if(key[KEY_UP]){
balloon.y-=speed;
}
if(key[KEY_DOWN]){
balloon.y+=speed;
}
if(key[KEY_LIFT]){
balloon.x-=speed;
}
if(key[KEY_RIGHT]){
balloon.x+=speed;
}
}
这是键盘控制balloon移动的代码,可以检测两个键斜移
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询