在netbeans的Java图象道路

时间:2011-10-05 00:43:56

标签: java netbeans path imageicon

我正在Java中冒险,所以我正在构建一个扫雷。现在我已经完成了一些技巧,我想让它变得用户友好。

尝试将ImageIcon添加到按钮上,但我无法做到!我不知道Java是如何工作的!

我这样做:

(假设这是扩展JButton)

super(new ImageIcon("/minesweeper/resources/bomb.png"));

我有这样的包裹:

  • 扫雷
  • minesweeper.components
  • minesweeper.resources(尝试在此处组织图片)
  • 测试(一些仅用于测试的东西)

我做错了吗? (ofc,但是怎么回事?)

2 个答案:

答案 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