为什么setIcon不在JButton上显示图像?

时间:2013-07-08 21:00:37

标签: java image swing jbutton imageicon

我发誓我到处寻找并且谷歌上网了好几个小时。我已将actionListeners添加到所有按钮,当点击一个按钮时,我想给它一个setIcon( image )的图像,如下所示:

public void actionPerformed(ActionEvent e) {
    if(e.getSource() == button) {

    ImageIcon icon = new ImageIcon(getClass().getResource("/Images/" +letter+ ".PNG"));
    button.setIcon(icon );
}

1)我知道它正在检索图像,因为button.getIcon()给了我file:/Users/path/to/Images/X.PNG之类的东西。我在设置图标之前和之后检查过它是否为空,之后它不为空。

2)除了getClass()...ImageIO.read...以及BufferedImage之外,我还尝试过其他的setIcon变体。

3)我不想添加更多代码,因为我甚至不确定其他相关内容。我希望你的一些猜测

4)在eclipse中,我将输出文件夹更改为src(而不是bin),这就是我的Images文件夹所在的位置。

1 个答案:

答案 0 :(得分:0)

我认为我有同样的问题。我正在使用Eclipse,在JGrasp中测试我的代码并且它有效。原来Eclipse需要Project文件夹中的资源,而不是SRC或BIN。