将图像放在 JLabel 和 JButton 上的方法 [重复]
Posted
技术标签:
【中文标题】将图像放在 JLabel 和 JButton 上的方法 [重复]【英文标题】:The way to put image on JLabel and JButton [duplicate] 【发布时间】:2021-12-15 15:33:12 【问题描述】:我写这篇文章是因为我之前的问题被错误的答案链接关闭。
我在代码下方的 JLabel 上看不到图像
import javax.swing.*;
public class JButtonEx extends JFrame
JButtonEx()
setSize(300,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel label = new JLabel(new ImageIcon("network/star.png"));
add(label);
setVisible(true);
public static void main(String[] args)
new JButtonEx();
【问题讨论】:
【参考方案1】:当你加载图片时,使用 getClass().getResource();
ImageIcon icon = new ImageIcon(getClass().getResource("star.png"));
【讨论】:
上一个问题中标记的副本上的接受答案具有代码行ImageIO.read(getClass().getResource("/wood.jpeg"));
。它不仅解决了您的代码的主要问题(使用getResource()
),它还具有使用ImageIO
加载图像的功能,而这个答案没有。当代码尝试通过ImageIO
加载图像并失败时,会产生有用的堆栈跟踪。因此,这个答案比副本为后来的观众提供了 less 价值。这是噪音。
但是当我使用 ImageIo 时,它不起作用以上是关于将图像放在 JLabel 和 JButton 上的方法 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
当面板中的 JButton 悬停时,JPanel 上的 MouseExited 运行?
如何让 Swing 将我自己的 HTMLEditorKit 用于 JLabel/JButton/等
绘制一个 JButton 看起来像一个 JLabel(或者至少没有按钮边缘?)