【发布时间】:2021-04-09 22:28:55
【问题描述】:
我已经编写了一些代码行,这些代码应该将图像显示为 JFrame 中的标签。这是代码。
ImageIcon image = new ImageIcon("funny.jpg");
JLabel label = new JLabel();
label.setIcon(image);
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setVisible(true);
frame.add(label);
【问题讨论】:
-
让
frame.setVisible(true);成为你最后一次调用 - Swing 是懒惰的,当它改变时不会更新 UI,你需要自己做(这是对性能的优化)。另外,user15358848 所说的 -
@user15358848 是的,图像无法加载,我该如何解决?我也无法使用 ImageIO 打开它。
-
应用程序资源在部署时将成为嵌入式资源,因此明智的做法是立即开始访问它们。 embedded-resource 必须通过 URL 而不是文件访问。请参阅info. page for embedded resource 了解如何形成 URL。
标签: java image swing jlabel imageicon