这个程序中的SWITCH有什么错误吗?
时间:2010-12-16
来源:互联网
请各位不要见笑,一个非常简单的小程序
import flash.events.KeyboardEvent;
import flash.events.Event;
import flash.ui.Keyboard;
var ball:Ball;
var vx:Number=0;
var ax:Number=0;
ball=new Ball();
addChild(ball);
ball.x=stage.stageWidth/2;
ball.y=stage.stageHeight/2;
stage.addEventListener(KeyboardEvent.KEY_DOWN,onkeydown);
stage.addEventListener(KeyboardEvent.KEY_UP,onkeyup);
function onkeydown(e:KeyboardEvent):void{
switch(e.keyCode){
case Keyboard.LEFT:ax=1;
case Keyboard.RIGHT:ax=-1;
default:ax=0;
}
}
function onkeyup(e:KeyboardEvent):void{
ax=0;
}
addEventListener(Event.ENTER_FRAME,one);
function one(e:Event):void{
vx+=ax;
ball.x+=vx;
}
为什么switch()在这里不起作用,只有改成if才行
import flash.events.KeyboardEvent;
import flash.events.Event;
import flash.ui.Keyboard;
var ball:Ball;
var vx:Number=0;
var ax:Number=0;
ball=new Ball();
addChild(ball);
ball.x=stage.stageWidth/2;
ball.y=stage.stageHeight/2;
stage.addEventListener(KeyboardEvent.KEY_DOWN,onkeydown);
stage.addEventListener(KeyboardEvent.KEY_UP,onkeyup);
function onkeydown(e:KeyboardEvent):void{
switch(e.keyCode){
case Keyboard.LEFT:ax=1;
case Keyboard.RIGHT:ax=-1;
default:ax=0;
}
}
function onkeyup(e:KeyboardEvent):void{
ax=0;
}
addEventListener(Event.ENTER_FRAME,one);
function one(e:Event):void{
vx+=ax;
ball.x+=vx;
}
为什么switch()在这里不起作用,只有改成if才行
作者: roxyman 发布时间: 2010-12-16
判断写得不对,怎样才是对的呢,请按F1,复制帮助文档中 关于switch的代码,并阅读说明
作者: flash023 发布时间: 2010-12-17
谢谢你的回答。问题我没有说清楚。这个程序是用键盘的光标控制小球的加速。RIGHT向右加速,LEFT向左加速。程序编译通过。但运行时如果是用SWITCH语句,小球没有反应。如果改成IF语句,小球就会动起来。还请再帮解疑
作者: roxyman 发布时间: 2010-12-17
明白了,必须要加break;
作者: roxyman 发布时间: 2010-12-17
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28