在eclipse中显示imageicon并不起作用

时间:2014-07-04 14:05:24

标签: java eclipse imageicon

所以我刚刚写下了一些只在JButton中显示图像的简单代码。 我所做的就是编写代码:

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;


public class Main extends JFrame{

public static ImageIcon bf;
public static JPanel p;
public static JButton b;

public static void main (String args[]){
    Main main = new Main();

    bf = new ImageIcon("car.png");
    p = new JPanel();
    b = new JButton(bf);
    p.add(b);
    main.add(p);

    main.setVisible(true);
    main.setDefaultCloseOperation(main.EXIT_ON_CLOSE);
    main.setSize(600,700);


}

}

我在同一个文件夹中复制了一张名为car.png的图片,但是我似乎无法让它在elipse中工作。

enter image description here

但是当我在BlueJ中运行相同的代码时,它运行它没有任何已知问题。 任何帮助都会受到高度赞赏 在此先感谢。

2 个答案:

答案 0 :(得分:1)

检查car.png是否在文件系统的bin目录下(在Eclipse中过滤掉,在文件浏览器中也是如此)。

顺便说一下,我建议使用像ImageIO.read(Main.class.getResource("/car.png"))这样的东西。原因如下:稍后您可能会打包您的应用程序(例如,进入Jar文件)。现在,如果你这样做,Java就能够定位图像,即使它是作为Jar或

执行的

答案 1 :(得分:1)

更改

bf = new ImageIcon("car.png"); 

    URL url = Main.class.getResource("car.png");
    bf = new ImageIcon(url);