哪位高手可以给我解释一下下面这段代码,我要在Applet中显示
画一个图片(paint方法没有列在这里),我已经将图片放在了
与TextureDemo同目录下的image文件夹下,可就是画不出来,
代码Image img = new ImageIcon(url).getImage()好像并没有读入图片,
用debug查看 img.getWidth()返回值是-1,小弟不明白,是图片资源的路径放错了
还是怎么回事,望高手指点,感谢!感谢!public class TextureDemo extends JApplet {
private BufferedImage bImage; public void init(){ // 获得图片资源
URL url=null;
try {
url = new URL(getCodeBase(),"images\\Winter.jpg");
} catch(MalformedURLException e) {
String msg = "Error loading image duke.gif";
System.err.println(msg);
showStatus(msg);
System.exit(0);
}
Image img = new ImageIcon(url).getImage();
// 建立一个和image大小相同的BufferedImage
// 把图片放在上面
bImage = new BufferedImage(img.getWidth(null),img.getHeight(null),
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = bImage.createGraphics();
g2.drawImage(img,null,null);
}}
画一个图片(paint方法没有列在这里),我已经将图片放在了
与TextureDemo同目录下的image文件夹下,可就是画不出来,
代码Image img = new ImageIcon(url).getImage()好像并没有读入图片,
用debug查看 img.getWidth()返回值是-1,小弟不明白,是图片资源的路径放错了
还是怎么回事,望高手指点,感谢!感谢!public class TextureDemo extends JApplet {
private BufferedImage bImage; public void init(){ // 获得图片资源
URL url=null;
try {
url = new URL(getCodeBase(),"images\\Winter.jpg");
} catch(MalformedURLException e) {
String msg = "Error loading image duke.gif";
System.err.println(msg);
showStatus(msg);
System.exit(0);
}
Image img = new ImageIcon(url).getImage();
// 建立一个和image大小相同的BufferedImage
// 把图片放在上面
bImage = new BufferedImage(img.getWidth(null),img.getHeight(null),
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = bImage.createGraphics();
g2.drawImage(img,null,null);
}}
解决方案 »
- IO 怎么把String里的内容写入到file文件里
- 守护进程调度的多线程程序中进程无法正常退出的异常问题
- timmer启动线程、计时问题
- 如何获得网页中指定的文本的字号?(100分)
- javaSwing,怎样实现对文件的压缩与解压缩?
- 求救:java.sql.SQLException: No suitable driver
- 请问这个异常是什么原因?java.io.IOException: error 10054 during TCP read
- 关于BEAN的使用方法
- JAVA 新手--有些基本概念不是很明确
- appletviewer的应用
- 还是关于i=i++的问题,只是面试的时候大家讨论讨论该怎么答题或者向面试官表述
- 提示错误,找不出来,请高手帮忙
原先遇到过
而不是和编译后的TextureDemo.class放在同一个目录下。我到是有一个问题,这里没有用到“IO”是怎么从磁盘读入文件的??不知哪位知道说出来学习一下。
其中第一段如下:一个 Icon 接口的实现,它根据 Image 绘制 Icon。可使用 MediaTracker 预载根据 URL、文件名或字节数组创建的图像,以监视该图像的加载状态。
这段话告诉你了要用MediaTracker去监视加载是否完成,因为加载时异步的,它是用了另一个线程去加载图像的。你要用MediaTracker去同步。自己去找怎么使用这个类来同步。