图像未在摆动框架中渲染

问题描述 投票:0回答:1

我已确保图像路径正确,并且向框架添加标签的语法正确。

public class Main {
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        JLabel label = new JLabel();
        label.setText("Hello");
        
        ImageIcon nintendoImage = new ImageIcon("Images/nintendo.jpg");
        frame.add(label);
        frame.setSize(400, 400);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setIconImage(nintendoImage.getImage());
        frame.setVisible(true);
    }
}

我还尝试使用图像的绝对路径,甚至尝试将 img 放在同一个包中,并使用 .pack() 作为框架。而且,是的,我有所有必要的进口),但它不起作用

java swing
1个回答
0
投票

如果您输入的图像路径确实正确,您的代码就可以正常工作。 在一个裸项目(没有像 maven/gradle 等依赖管理器)上,你的文件结构应该是

{ProjectFolder}/Images/nintendo.jpg

也许您对

Jframe.setIconImage()
的作用感到困惑,并且期待一些不同的东西。它实际上改变了应用程序的左上角图标/图像(JFrame)。

背景 JFrame(窗口)具有默认的 Java Swing 图标,而前景(突出显示)具有通过使用与上述路径完全相同的代码应用的随机 Nintendo 图像:

enter image description here

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.