如何在java swing中制作IconImage

时间:2014-04-08 15:34:56

标签: java image swing

所以,我正试图制作一个主屏幕,用于游戏。在这个主屏幕中,我希望有一些按钮,如"播放","退出","加载"但是我想导入一个我制作的图像,而不是使用jbutton和诸如此类的东西。继承代码基本上......

    import javax.swing.*;

    public class MainFrame extends JFrame {

    private static final long serialVersionUID = 1L;

      public MainFrame() {
        super("Main Screen");           
        JPanel panel = new JPanel();            
        ImageIcon pla = new ImageIcon("play.png");

        JButton quit = new JButton("Quit");
        JButton highScores = new JButton("High Scores");
        JButton play = new JButton(pla);
        JButton settings = new JButton("Settings");
        JButton store = new JButton("Store");
        JButton save = new JButton("Save");
        JButton load = new JButton("Load");

        panel.add(play);
        panel.add(load);
        panel.add(save);
        panel.add(settings);
        panel.add(store);
        panel.add(highScores);
        panel.add(quit);            
        add(panel);
        pack();         
        setSize(getSize());
        setLocationRelativeTo(null);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setVisible(true);       
        requestFocus();
    }

    public static void main(String[] args) {
        MainFrame sw = new MainFrame();
    }    
}

但是我收到了这个错误:

    Exception in thread "main" java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at MainFrame.<init>(MainFrame.java:28)
at MainFrame.main(MainFrame.java:71)

任何建议都会受到赞赏。谢谢。

编辑这是我写下的唯一代码,总共47行,没有我没有搞砸,多次检查,这是实际的编译器错误消息。

1 个答案:

答案 0 :(得分:0)

好的,我放弃了尝试解决这个问题,我只是在工作区中的单独文件夹中创建了我的项目..