eclipse编写j2me,jnp图显示问题

刚学j2me,从书上抄了一段简单的程序,能够成功运行,但是图片总是显示不出来,从论坛上找了很多方法,都不能解决,求各位大侠指点。图是保存在scr目录下面的,为了保证格式没... 刚学j2me,从书上抄了一段简单的程序,能够成功运行,但是图 片总是显 示不出来,从论 坛上找了很多方法,都不能解决,求各位大侠指点。
图是保存在scr目录下面的,为了保证格式没有问题,换了几个png图,包括自己ps的和从wtk目录下面找的,都显示不出来。程序如下:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class MyImage extends MIDlet implements CommandListener
{
private Command cmdExit;
private ImageCanvas canvas;

public MyImage()
{
cmdExit=new Command("Exit",Command.SCREEN,2);
canvas=new ImageCanvas();
}
public void startApp()
{
canvas.addCommand(cmdExit);
canvas.setCommandListener(this);
Display.getDisplay(this).setCurrent(canvas);
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}
public void commandAction(Command command,Displayable screen)
{
if(command==cmdExit)
{
notifyDestroyed();
}
}
}

ImageCanvas.java

import javax.microedition.lcdui.*;
public class ImageCanvas extends Canvas
{
public void paint(Graphics g)
{
try
{
Image image=Image.createImage("/bbbc.png");
g.drawImage(image, 0, 0, Graphics.TOP|Graphics.LEFT);
}catch(Exception e)
{
System.out.println(e.getMessage());
}
}
res目录里面也放过,还是不行,三楼的兄弟,是指在环境变量里面设置path吗?能不能说清楚一点。
还有,我再wtk上可以成功显示,通过wtk打包在真机上也可以显示。
展开
 我来答
rekcah19863b84
2010-08-05 · TA获得超过452个赞
知道小有建树答主
回答量:455
采纳率:0%
帮助的人:240万
展开全部
Image image=Image.createImage("/bbbc.png");
这句,拿到paint方法外面来,最好定义成全局变量
Image image = null;
然后在paint里
if(image == null) {
image=Image.createImage("/bbbc.png");
}

如果在paint里一直创建对象的话,首先会造成运行效率问题(创建图片很慢的),另一个,对象保存不住,很可能在手机上就无法绘制,造成你这样的问题
蓝梦34
2010-08-09 · TA获得超过597个赞
知道小有建树答主
回答量:785
采纳率:0%
帮助的人:579万
展开全部
如果res目录里面也放过了还是不行,那么你就对res目录build path下

如果wtk可以打包,说明程序没问题,是Eclipse路径问题。你看下你的res文件夹是不是在library下面,如果是,点击这个文件夹右键,有个build path,再选use as source field
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帅气的阿凯哥哥
2010-07-30 · TA获得超过170个赞
知道小有建树答主
回答量:181
采纳率:0%
帮助的人:155万
展开全部
与src目录同层的还有个res目录,图片资源要放在那个目录下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
请奎摩5568
2010-07-31 · 超过23用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:67.5万
展开全部

在eclipse下,把图片文件放到如下图的res里

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dzhh2011
2010-08-12
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
同意三楼 Image image=Image.createImage("/bbbc.png");
这句,拿到paint方法外面来,最好定义成全局变量
Image image = null;
确实应该 放在外面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式