当前位置: 代码迷 >> J2ME >> 小弟我的程序打包后图片死活加载不进来,哪位高手能帮小弟我打包 50分
  详细解决方案

小弟我的程序打包后图片死活加载不进来,哪位高手能帮小弟我打包 50分

热度:3446   发布时间:2013-02-25 21:34:52.0
我的程序打包后图片死活加载不进来,谁能帮我打包 50分
SSCanvas.java
=====================
Java code
import java.io.IOException;import javax.microedition.lcdui.Canvas;import javax.microedition.lcdui.Display;import javax.microedition.lcdui.Font;import javax.microedition.lcdui.Graphics;import javax.microedition.lcdui.Image;public class SSCanvas extends Canvas{    private Display display;    private Image[] slides;    private String[] captions = {"Love Circle Bowl","Double Wide Spine",                                  "Flume Zoom Over-vert","Kulp De Sac Bowl","Louie's Ledge"};    private int curSlide = 0;    public SSCanvas(Display d)    {        super();        display = d;                try        {            slides = new Image[5];            slides[0] = Image.createImage("/0.JPG");            slides[1] = Image.createImage("/1.JPG");            slides[2] = Image.createImage("/2.JPG");            slides[3] = Image.createImage("/3.JPG");            slides[4] = Image.createImage("/4.JPG");        }        catch (IOException e)        {            System.err.print("Failed loading images");        }            }        void start()    {        display.setCurrent(this);        repaint();    }        public void keyPressed(int keyCode)    {        int action = getGameAction(keyCode);        switch(action)        {            case LEFT:                if(--curSlide < 0)                    curSlide = slides.length - 1;                repaint();                break;            case RIGHT:                if(++curSlide >= slides.length)                    curSlide = 0;                repaint();                break;        }    }        public void paint(Graphics g)    {        g.setColor(255,255,255); // 白色        g.fillRect(0, 0, getWidth(), getHeight());                g.drawImage(slides[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.TOP | Graphics.HCENTER);    }}


SlideshowMIDlet
==================
Java code
import javax.microedition.lcdui.Command;import javax.microedition.lcdui.CommandListener;import javax.microedition.lcdui.Display;import javax.microedition.lcdui.Displayable;import javax.microedition.midlet.MIDlet;public class SlideshowMIDlet extends MIDlet implements CommandListener {private SSCanvas canvas;        public void startApp()    {        if (canvas == null)        {            canvas = new SSCanvas(Display.getDisplay(this));            Command exitCommand = new Command("Exit", Command.EXIT, 0);            canvas.addCommand(exitCommand);            canvas.setCommandListener(this);        }                canvas.start();    }        public void pauseApp()    {}        public void destroyApp(boolean uncoditional)    {}    public void commandAction(Command c, Displayable s) {        if (c.getCommandType() == Command.EXIT)        {            destroyApp(true);            notifyDestroyed();        }            }}



在eclipse里调试运行都没问题,打包后图片读取异常,谁能帮我打包看看怎么回事

分不够嚷嚷,我在加

------解决方案--------------------------------------------------------
slides[0] = Image.createImage("/0.JPG");

改成
slides[0] = Image.createImage("0.JPG");

然后打包
确认 0.JPG 在jar的根目录下面

------解决方案--------------------------------------------------------
确认 0.JPG 在jar的根目录下面 
  相关解决方案