免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1229 | 回复: 0
打印 上一主题 下一主题

j2me显示图像 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-05-05 23:34 |只看该作者 |倒序浏览
平台搭建好了,不能满足于helloworld吧,于是开始继续看《Java手机游戏实例手册》。今天是Image类和Canvas类的使用。把书上的代码copy下来了。 MyCartoonMidlet.java:(主程序)
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
public class MyCartoonMidlet extends MIDlet {
public MainCanvas m_MainCanvas;
public MyCartoonMidlet() {
super();
// TODO Auto-generated constructor stub
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
m_MainCanvas = new MainCanvas();
Display.getDisplay(this).setCurrent(m_MainCanvas);
while(true){
m_MainCanvas.repaint();
}
}
}

MainCanvas.java:(自定义类MainCanvas)
import java.io.IOException;
import javax.microedition.lcdui.*;
public class MainCanvas extends Canvas{
public Image m_Image;
MainCanvas(){
try{
m_Image=Image.createImage("/zjl_24.png");
}
catch(IOException e){}
}
protected void paint(Graphics g) {
// TODO Auto-generated method stub
g.drawImage(m_Image, 0, 0, Graphics.TOP|Graphics.LEFT);
}
}
运行的时候出现NullPointerException,因为m_Image=Image.createImage("/zjl_24.png")总是返回null。这说明图像没有成功创建。原来是图像文件位置没放对,书上是老版本位置不同。我把文件放到res目录下面(src目录下面也是可以的),然后右键点项目文件,选择refresh刷新(重要!)。刷新后会自动在bin目录下也生成同一个图像文件。于是可以成功运行,显示出了图片
ps.j2me操作的图像都是png格式的。大分辨率的图像只会显示一部分出来。



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/65859/showart_676857.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP