首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2ME开发 >

当按键按下时Canvas的KeyPressed()方法没有调用该如何解决

2011-12-27 
当按键按下时Canvas的KeyPressed()方法没有调用该怎么解决?publicsynchronizedvoidKeyPressed(intkeyCode)

当按键按下时Canvas的KeyPressed()方法没有调用该怎么解决?
public   synchronized   void   KeyPressed(int   keyCode){
                System.out.println( "sdfsdfsd ");
              if(gameState   !=GAME_PLAYING   ||   (gameState==GAME_PLAYING   &&   isPaused)){
                  return;
                       
              }
                if   (keyCode   ==   0)return;
                int   gameCode   =   getGameAction(keyCode);
                System.out.println(gameCode);
                switch   (gameCode){
                        case   GameCanvas.LEFT:
                                doLeft();
                                break;
                        case   RIGHT:
                                doRight();
                                break;
                        case   FIRE:
                        case   UP:
                                doFire();
                                break;
              }
                repaint();
        }
       
    public   void   keyRepeated(int   keyCode){
              keyPressed(keyCode);
               
        }


[解决办法]
你怎么判断出来没有调用呢?
[解决办法]
是keyPressed(int keyCode)
不是KeyPressed(int keyCode)
楼主要仔细啊-_-!!
[解决办法]
大小写问题。

用IDE开发的话,重写方法一般都会给出某种标识,比如eclipse就是一个向上的小三角。没有出现标识那就说明你的方法签名出了问题。
顺便,java代码规范就是要求方法首字母小写。。。有大写打头的方法第一反应就是有问题。
[解决办法]
KeyPressed 应该是方法keyPressed
[解决办法]
呵呵,,得注重细节

热点排行