尝试将ImageIcon添加到按钮上,但我无法做到!我不知道Java是如何工作的!
我这样做:
(假设这是扩展JButton)
super(new ImageIcon("/minesweeper/resources/bomb.png"));
我有这样的包裹:
我做错了吗? (ofc,但是怎么回事?)
答案 0 :(得分:3)
您可以通过这种方式获取图像:
new ImageIcon(getClass().getResource("/minesweeper/resources/bomb.png"))
查看Java Doc以查找public URL getResource(String name)
答案 1 :(得分:1)
为了避免可能出现的任何问题,特别是在使用不同的打包方法时,请创建一个名为res
或其他内容的新包,然后在其中填入Res.java
。将图像放在同一个包目录中。现在,当您想要阅读某些内容时,您将使用InputStream
获取Res.getClass().getResourceAsStream("filename");
,然后使用流(new ImageIcon(is)
)创建一个新的ImageIcon。这会为您提供ImageIcon
,您可以将其与标签一起使用。
如果您想使用超级构造函数来设置图像,您可以一次性完成:
super(new ImageIcon(Res.getClass().getResourceAsStream("filename")));
否则,只需使用setIcon(..);
。
修改:您将使用现有的resources
包。只需在其中添加Res.java
。