标题:jar和图片的问题
只看楼主
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
 问题点数:0 回复次数:9 
jar和图片的问题
我写了一个程序,里面用JLabel xxL = new JLabel (new ImageIcon ("狂战士.PNG"));加了几张图片,当我把图片和class文件一起用jar打包后,在当前文件夹双击运行时,程序可以显示图片。当我将jar转移到别的文件夹后双击运行就不能显示图片了。然后我解压jar文件,那个图片释放不出来,后来我把图片的名字改为英文字母后打包再解压,却没问题。谁能告诉我这是怎么回事?如果每次都要解压jar文件才能看见程序里的图片,那我程序做好了有上百张图片,一解压有那么多图片,实在不方便,有什么办法解决这个问题吗?
搜索更多相关主题的帖子: jar 狂战士 文件 JLabel 
2007-05-17 17:34
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
和类文件放在一起
然后可以用getClass().getResource()得到它的URL

然后就可以用此URL构造图片,用图片构造ImageIcon,

可惜不是你,陪我到最后
2007-05-17 17:52
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
得分:0 
不是太明白。。。

2007-05-17 18:02
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
得分:0 
还有一个问题,就是我用QQ把我打包好的jar文件发给别人,别人双击后出现的是解压的框对话,我自己双击确可以直接运行,这是为什么?

2007-05-17 18:07
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
得分:0 

版主能不能写个例子出来我看看。。。


2007-05-17 18:14
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
对方要装JRE才行的

例子?
用我的那个方法得到URL,有了URL你想得到图片还不容易?

可惜不是你,陪我到最后
2007-05-17 18:54
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
得分:0 

我没用过这个方法,版主写个例子谢谢。假如要把c:\sun\狂战士.PNG图片加到JLabel xxL = new JLabel();标签里面。


2007-05-17 21:04
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
不能用绝对路径,应该用相对于CLASS文件的路径

比如,你的类叫A
public class A{
...
URL url=this.getClass().getResource("狂战士.png");
Image image=Toolkit.getDefaultToolkit().createImage(url);
ImageIcon icon=new ImageIcon(image);
JLabel xxL=new JLabel(icon);
...

}

还有,你把图片放到A.class同一个目录下,就可以了,以后打包的时候,也是一样,把它一起打进去,也可以读取了

可惜不是你,陪我到最后
2007-05-18 09:05
ck0311
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-2-13
得分:0 

明白了,谢谢版主


2007-05-18 19:05
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
斑竹,超强啊,我也学了一段时间了,可是还不得窍门啊

学习需要安静。。海盗要重新来过。。
2007-05-18 19:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-140211-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.869191 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved