您的位置:首页 > 编程语言 > Java开发

Java ImageIcon 不能显示问题

2015-08-12 20:37 405 查看
标签: 包头 相对路径 获取 源文件 绝对地址 分类: java

Java程序ImageIcon无法显示图片时,可能有以下几种原因

使用ImageIcon控件

一:在JDK 1.6中,如果java源文件没有使用包,那么可以直接通过相对路径(相对当前类的路径)获取图片

例如 ImageIcon image= new ImageIcon(“ship.png”);

其中ship.png和这句引用所在的类在同一目录下。

二:在Netbeans中,在默认文档框架下,如果Java源文件使用了包,那么可以通过loader资源获取函数获取图片

例如 包头:package guardeva;

控件: ImageIcon image= new ImageIcon(ClassLoader.getSystemResource(“guardeva/ship.png”));

这种情况下,用classloader的获取函数得到的地址是包地址作为起始。

另外,不论是否含有包,都可以用完整工程路径获取图片,例如

ImageIcon image= new ImageIcon(“src/guardeva/ship.png”);

使用Eclipse等其它开发环境可能会有所不同。

三:如果是在Applet程序中

4000
直接用new ImageIcon(“img.jpg”)无法显示图片; 要改为new ImageIcon(getImage(getCodeBase(),”img.jpg”));图片才能显示出来。

这是由于Applet小引用程序是运行在WEB中的,没有绝对地址,所以只能用相对路径来加入图片,Applet本身不知道调用自己的网页所在的路径地址,所以用getCodeBase()来获得网页所处的位置。Applet中getImage()方法有两个构造,一个是(URL),一个是(URL,String name),我们利用第二个构造就可以返回一个指定的图片对象了,把这个图片对象加入到new ImageIcon()中就可以在Applet中显示出图片。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java