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

点击Detial提示’java.lang.IllegalMoniterStateException,MIDP1.0中检测到两张图片碰撞时的处理问题!

2014-01-26 
动画中的两张图片:第一张是monkey[0],坐标是(x,y);第二张是monkey[2],坐标是(xiongX,xiongY);我想在两张图

动画中的两张图片:
 
  第一张是monkey[0],坐标是(x,y);
  第二张是monkey[2],坐标是(xiongX,xiongY);
 
  我想在两张图片碰撞的时候,将之前定义好的int变量scroe能够自加5,即我把下面检测碰撞的算法中的wait()改成scroe+=5时就会出现DEBUG报错:
 
  "ok3Displayable.java": exception java.lang.InterruptedException is never thrown in body of corresponding try statement at line 62, column 6
 
  我检测两张图片是否碰撞的算法:
 
  try {
  if(x-monkey[0].getWidth()/2 <xiongX +monkey[2].getWidth()/2 &&
  x+monkey[0].getWidth()/2 >xiongX -monkey[2].getWidth()/2){
  if(y-monkey[0].getHeight()/2 < xiongY + monkey[2].getHeight()/2 &&
  y+monkey[0].getHeight()/2 > xiongY - monkey[2].getHeight()/2){
 
  wait(); //使游戏停顿
  }
  }
  } catch (InterruptedException e1) {}
 
  直接这么写的时候运行,在没有碰撞的时候游戏可以正常运行,但是一旦碰撞发生之后就会出现Application Eorrer,点击Detial提示“java.lang.IllegalMoniterStateException”。
  改成s+=5;则会出现上面说的问题。   

  我该怎么做啊?
 
  我的环境:jb2006+nokia7210(midp1.0)
 

------解决方法--------------------------------------------------------
等待用户输入何必要停止线程? 停止移动图片不就行了吗。

        

热点排行