在jFrame中添加gif时出错

时间:2015-03-19 10:18:53

标签: java jframe jlabel gif

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

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",这可能是导致沮丧的位置的定义?如果是的话,解决方案是什么?

2 个答案:

答案 0 :(得分:0)

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

喜欢这个

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

Check File URI Scheme on Wikipedia

答案 1 :(得分:0)

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

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

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