import javax.swing.*;
public class GUI {
public static void main(String s[]) {
ImageIcon image = new ImageIcon("logo.png");
JFrame frame = new JFrame();
JLabel label = new JLabel();
label.setIcon(image);
label.setText("Boom");
frame.setTitle("SJ");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setVisible(true);
frame.add(label);
}
}
我是初学者,只是在学习 JFrame
,你们能告诉我为什么图像没有出现吗?我已经把图片(logo.png)放在那个类所在的文件夹中。我使用vscode作为ide。提前谢谢!!
2条答案
按热度按时间arknldoa1#
非常感谢所有试图帮助我的人!!
我用过:
成功了!!我在这里提到过!
kcrjzv8t2#
把旧的上网本掸了掸然后试一下。。。
您可以这样做:
基本上,图像作为一种资源捆绑在jar文件中,为了正确地提取它,您需要类#getresource(string name)
下面是我的完整示例和我的图像位置截图:
testapp.java文件:
产生:
如果您的徽标可能位于嵌套的java包中,如下所示:
您只需执行以下操作:
更新:
如@camickr所述,将所有组件添加到
JFrame
在让它可见之前。此外,所有swing组件都应该通过在edt上创建
SwingUtilities.invokeLater
如我的例子所示。