我不确定我是否使用此代码引用了正确的位置,我尝试访问的图片标题为Flower0.png
等。
它们与我项目的其余代码位于同一目录中。
此类位于名为hangman.ui
的src文件夹中,.png
文件位于名为Resources
的目录文件夹中。
也许getClass().getResource
不对?
这是我第一次尝试将图像放入GUI中。
非常感谢帮助!
public WiltingFlowerRendererRemix(HangmanLogic logic)
{
panel = new JPanel();
panel.setLayout(new BorderLayout());
imageLabel = new JLabel();
panel.add(imageLabel, BorderLayout.CENTER);
int numberOfImages = 10;
images = new ImageIcon[numberOfImages];
for (int i = 0; i < numberOfImages; i++)
{
images[i] = new ImageIcon(getClass().getResource("Flower"+Integer.toString(i) + ".png"));
}
}
答案 0 :(得分:1)
您说图像位于名为“资源”的文件夹中?你可以加载这样的图像:
BufferedImage image = ImageIO.read(getClass().getResource("/Resources/Flower0.png"));
ImageIcon icon = new ImageIcon(image);
要在GUI上使用它,您可以使用JLabel。
JLabel label = new JLabel();
label.setIcon(icon);
然后将标签添加到面板中。例如。
答案 1 :(得分:0)
对我来说有用...
根据Maven: https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html
src/main/resources
:Application/Library resources
然后我将ICON放在此位置:
PROJECTNAME\src\main\resources\usedPictures\
--Open.png
清理并生成。,然后您可以在此处检查文件的获取位置...。
PROJECTNAME\target\classes\usedPictures\
--Open.png
现在使用ICON示例:
button.setIcon(
new javax.swing.ImageIcon(
getClass().getClassLoader().getResource("usedPictures/Open.png")
)
);