编程论坛's Archiver

oldbabyxixi 发表于 2008-5-4 17:17

模拟器显示不出来东西?

运行通过 但是模拟器显示不出来东西 不知道是怎么回事
请各位看看 谢谢!

import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import javax.microedition.midlet.MIDletStateChangeException;
import java.util.*;
import java.io.*;


public class SlideShowMidlet extends MIDlet {

        private SSCanvas canvas;
        public SlideShowMidlet() {
                // TODO Auto-generated constructor stub
               
        }

        protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
                // TODO Auto-generated method stub
                canvas.stop();
        }

        protected void pauseApp() {
                // TODO Auto-generated method stub

        }

        protected void startApp() throws MIDletStateChangeException {
                // TODO Auto-generated method stub
                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 commandAction(Command c,Display s)
        {
                if(c.getCommandType() == Command.EXIT)
                {
                        canvas.stop();
                        notifyDestroyed();
                }
        }
        */

}
class SSCanvas extends GameCanvas implements Runnable
{
        private Display display;
        private boolean sleeping;
        private long frameDelay;
        private Random rand;
        private Sprite dongSprite;
        private int dongXSpeed,dongYSpeed;
       
        public SSCanvas(Display d)
        {
                super(true);
                display = d;
                frameDelay = 33;
        }
       
        public void Start()
        {
                display.setCurrent(this);
                rand = new Random();
               
                dongXSpeed = dongYSpeed = 3;
                try
                {
                        dongSprite = new Sprite(Image.createImage("/Character_06_B.png"));
                        dongSprite.setPosition(0, 0);
                }
                catch(IOException ex)
                {
                        System.err.println("Failde loading image!");
                }
                sleeping = false;
                Thread t =new Thread(this);
                t.start();
        }
        public void stop()
        {
                sleeping = true;
        }
        public void run()
        {
                Graphics g = getGraphics();
               
                while(!sleeping)
                {
                        update();
                        draw(g);
                        try
                        {
                                Thread.sleep(frameDelay);
                               
                        }
                        catch(InterruptedException ex)
                        {}
                }
        }
        private void update()
        {
                if(rand.nextInt()%5 == 0)
                {
                        dongXSpeed = Math.min(Math.min(dongXSpeed+rand.nextInt()%2, -8),8);
                        dongYSpeed = Math.min(Math.min(dongYSpeed+rand.nextInt()%2, -8),8);
                }
                dongSprite.move(dongXSpeed, dongYSpeed);
        }
        private void draw(Graphics g)
        {
                g.setColor(0x00000000);
                g.fillRect(0, 0, getWidth(), getHeight());
               
                dongSprite.paint(g);
               
                flushGraphics();
        }
}

千里冰封 发表于 2008-5-4 22:00

是不是你的路径含 有中文

wenshu 发表于 2008-5-5 20:07

是不是你Image.createImage("/Character_06_B.png") 这句话出错了,检查一下你的工程中的相应的png文件在不在。

我在Netbeans6.0中运行你的代码是好的,看到了动画效果。

oldbabyxixi 发表于 2008-5-5 21:41

我是觉得路径应该有问题 我是把图片放在桌面上的 请问应该怎样获取绝对路径了?谢谢!!

lh15871815717 发表于 2008-5-26 21:00

提示什么信息啊?

首先你确定你的图片是有导入到指定的目录,建议你用MYELIPSE6。0,因为它是自动生成资

源文件夹,然后把图片导入进去就可以了!

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.