J2ME图片加载问题
我的程序加载图片时``运行就会一闪就没了``但是要是把加载图片那段代码去了```就能运行```请问是怎么回事啊!
我用的是JBULUDER2006```图片放在工程文件夹下的SRC文件夹下````
请高手帮忙看一下````````
package untitled2;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import java.io.IOException;
import java.io.InputStream;
public class MainCanvas extends Canvas implements CommandListener{
private Display display;
private Image[] image1;
private String[] captions = { "img1 ", "img2 "};
private int curSlide = 0;
public MainCanvas(Display display) {
super();
try {
image1 = new Image[2];
image1[0] = Image.createImage( "/img1.png ");
image1[0] = Image.createImage( "/img2.png ");
this.display = display;
InputStream imageStream = getClass().getResourceAsStream( "/res/fly.png ");
System.out.println(null==imageStream);
//jbInit();
}
catch (IOException e) {
System.err.print( "加载图片... ");
e.printStackTrace();
}
}
void start() {
display.setCurrent(this);
repaint();
}
private void jbInit() throws Exception {
// Set up this Displayable to listen to command events
setCommandListener(this);
// add the Exit command
addCommand(new Command( "退出 ", Command.EXIT, 1));
}
public void commandAction(Command command, Displayable displayable) {
/** @todo Add command handling code */
if (command.getCommandType() == Command.EXIT) {
// stop the MIDlet
MIDlet1.quitApp();
}
}
public void keyPressed(int keyCode) {
int action = getGameAction(keyCode);
switch (action) {
case LEFT:
if (--curSlide < 0) {
curSlide = image1.length - 1;
repaint();
break;
}
case RIGHT:
if (++curSlide > = image1.length) {
curSlide = 0;
repaint();
break;
}
}
}
protected void paint(Graphics g) {
/** @todo Add paint codes */
g.setColor(255, 255, 255);
g.fillRect(0, 0, getWidth(), getHeight());
g.drawImage(image1[curSlide], getWidth() / 2, getHeight() / 2,
Graphics.HCENTER | Graphics.VCENTER);
Font f=Font.getFont(Font.FACE_PROPORTIONAL,Font.STYLE_BOLD,Font.SIZE_MEDIUM);
g.setFont(f);
g.setColor(0,0,0);
g.drawString(captions[curSlide],getWidth()/2,0,Graphics.HCENTER|Graphics.TOP);
}
}
[解决办法]
呵呵,,好事来的,自己解决.
[解决办法]
什么原因啊
[解决办法]
image1[0] = Image.createImage( "/img1.png ");
image1[0] = Image.createImage( "/img2.png ");
---------
哈哈,低级错误-:)
[解决办法]
拿分!
[解决办法]
image1[0] = Image.createImage( "/img1.png ");
image1[0] = Image.createImage( "/img2.png ");
这个好像不应该出错。只是有一个下标写错了。
,但在这里不会报错,只不过image1[1]一直为null!在画图的时候才会出问题.