|
  
- 帖子
- 3825
- 积分
- 711
- 技术分
- 155
- 来自
- 大家闪才是真的闪
- 在线时间
- 1429 小时
- 注册时间
- 2003-2-2
|
5#
发表于 2007-10-3 15:57
| 只看该作者
类似这样的:- stage.addEventListener(KeyboardEvent.KEY_DOWN,reportKeyDown);
- stage.addEventListener(KeyboardEvent.KEY_UP,reportKeyUp);
- var IFRun:Boolean=false;
- var pressKeyList:Array=[];
- pressKeyList[Keyboard.RIGHT]={};
- pressKeyList[Keyboard.LEFT]={};
- pressKeyList["maxN"]=0;
- function reportKeyDown(event:KeyboardEvent):void {
- var keyCode:uint=event.keyCode;
- if (pressKeyList[keyCode] && !pressKeyList[keyCode][keyCode]) {
- trace("++++",keyCode);
- pressKeyList["maxN"]+=1;
- pressKeyList[keyCode][keyCode]=true;
- }
- if (!IFRun) {
- IFRun=true;
- mc1.addEventListener(Event.ENTER_FRAME,mcEnterFrameHandler);
- }
- }
- function mcEnterFrameHandler(event:Event):void{
- trace("RUN");
- if (pressKeyList[Keyboard.RIGHT][Keyboard.RIGHT]) {
- mc1.x+=5;
- mc1.scaleX=1;
- }
- if (pressKeyList[Keyboard.LEFT][Keyboard.LEFT]) {
- mc1.x-=5;
- mc1.scaleX=-1;
- }
- }
- function reportKeyUp(event:KeyboardEvent):void {
- var keyCode:uint=event.keyCode;
- if (pressKeyList[keyCode] && pressKeyList[keyCode][keyCode]) {
- pressKeyList[keyCode][keyCode]=false;
- pressKeyList["maxN"]-=1;
- if (pressKeyList["maxN"]==0) {
- mc1.removeEventListener(Event.ENTER_FRAME,mcEnterFrameHandler);
- IFRun=false;
- }
- }
- }
复制代码 //PS:仅供参考 |
|