读书人

在wtk中做好的jar为什么在E65中不好使

发布时间: 2011-12-30 23:30:45 作者: rapoo

在wtk中做好的jar为什么在E65中不好使
请问 在wtk中做好的jar 问什么
在nokia E65中只显示一张图片 报错说:“无法处理的异常”

主程序如下
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import javax.microedition.lcdui.game.*;

public class Archery extends MIDlet implements CommandListener {
Display display = null;
private Command cmdExit = new Command( "Exit ", Command.STOP, 1);

private GameFrameCanvas can = null;

public Archery() {
display = Display.getDisplay(this);
can = new GameFrameCanvas(false);
can.addCommand(cmdExit);
can.setCommandListener(this);
}

public void startApp() throws MIDletStateChangeException {
display.setCurrent(can);
can.startgame();
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
can.gameover();
}

/**
* 退出按钮事件
*/
public void commandAction(Command c, Displayable d) {
if (c == cmdExit) {
notifyDestroyed();
}
}
}


class GameFrameCanvas extends GameCanvas implements Runnable{
//游戏结束标志
private boolean gameover = false;

//小新换装图像
private Image xiaoxin;
private Image xiaoxin1;
private Image xiaoxin2;
private Image xiaoxin3;
private int con_xxframe=0;
//private Sprite xiaoxin_S;

//眉毛图像
private Image meimao;
private int con_mm=0;


private int mm_x=0;
private int mm_y=0;
private Sprite meimao_S;

private Image meimao1;
private int con_mm1=0;
private int mm1_x=0;
private int mm1_y=0;
private Sprite meimao1_S;
private int con_mm_move=0;

//手提物图像
private Image putao;
private Sprite putao_S;
private Image putao1;
private Sprite putao_S1;
private Image putao2;
private Sprite putao_S2;
private Image putao3;
private Sprite putao_S3;

private int show_xiaoxin=0;
private int show_putao=0;
private int con_move=0;
private int con_pt=0;
private int pt_x=50;
private int pt_y=50;

private int canW, canH;

private int speed = 1;
//导弹的当前位置
private int curX,curY;

java.io.InputStream is ;
Player player ;

public void playmidi()
{
try
{
is = null;
is = getClass().getResourceAsStream( "/1.mid ");
player = null;
player = Manager.createPlayer(is, "audio/midi ");
player.realize();
player.prefetch();
// player.close();
player.start();
}
catch(Exception e)
{
System.out.println( "g播放MIDI音乐发生异常: " + e.toString());
}
}

public GameFrameCanvas(boolean suppressKeyEvents) {
super(suppressKeyEvents);
playmidi();


try {
xiaoxin = Image.createImage( "/1.png ");//200*200的图片
xiaoxin1 = Image.createImage( "/2.png ");//200*200的图片
xiaoxin2 = Image.createImage( "/3.png ");//200*200的图片
xiaoxin3 = Image.createImage( "/4.png ");//200*200的图片



meimao1 = Image.createImage( "/meimao.png ");//100*50的图片
meimao1_S = new Sprite (meimao1,50,50);
meimao1_S.setFrame(1);

putao = Image.createImage( "/2-1.PNG ");//200*200的图片
putao_S = new Sprite (putao,100,200);
putao_S.setFrame(0);
putao1 = Image.createImage( "/2-2.PNG ");//200*200的图片
putao_S1 = new Sprite (putao1,100,200);
putao_S1.setFrame(0);
putao2 = Image.createImage( "/2-3.PNG ");//200*200的图片
putao_S2 = new Sprite (putao2,100,200);
putao_S2.setFrame(0);
putao3 = Image.createImage( "/2-4.PNG ");//200*200的图片
putao_S3 = new Sprite (putao3,100,200);
putao_S3.setFrame(0);


} catch (Exception e) {
out( "装载游戏图像异常: " + e.toString());
}

//计算游戏中使用的一些值
canW = getWidth();
canH = getHeight();
pt_x=(canW-200)/2;


pt_y=(canH-200)/2;

}



[解决办法]
既然有异常,那就把异常捕获了显示到屏幕上看看是什么。

读书人网 >J2ME开发

热点推荐