2015-03-19 40 views
0

所以我遇到了一个解决方案,在stackoverflow中添加gif图像到jFrame,现在好像程序接受我在stackoverflow中找到的代码。但是,定义图像位置可能有问题,因此我已经同时使用了我目前使用的代码以及下面的错误,请帮助!在jFrame中添加gif错误

public static void main(String args[])throws MalformedURLException { 

URL url = new URL("f:/SDPproject/CheapDealsMobiApp/build/classes/cheapdealsmobiapp/Gif-1"); 
Icon icon = new ImageIcon(url); 
JLabel label = new JLabel(icon); 
JFrame f = new JFrame("Animation"); 
f.getContentPane().add(label); 
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
f.pack(); 
f.setLocationRelativeTo(null); 
f.setVisible(true); 
} 

需要注意的是,错误是“异常线程‘main’java.net.MalformedURLException:未知协议:F”,算得上是可能的位置造成不安的定义?如果是这样,解决方案是什么?

回答

0

实际上,你需要指定协议,加file://到您的文件路径的开头

喜欢这个

URL url = new URL("file://f:/SDPproject/CheapDealsMobiApp/build/classes/cheapdealsmobiapp/Gif-1"); 

Check File URI Scheme on Wikipedia

+0

替代为文件(不容易出错)创建URL: \t'URL URL =新的文件( “F:/ SDPproject/CheapDealsMobiApp /建造/类/ cheapdealsmobiapp/GIF-1”) 。.toURI()的toURL();' – 2015-03-19 10:30:52

0

东西告诉我,你真正想要的更像是

Icon icon = new ImageIcon(ThisClassName.class.getResource("/cheapdealsmobiapp/Gif-1")); 

Icon icon = new ImageIcon(ThisClassName.class.getResource("cheapdealsmobiapp/Gif-1"));