java - 图像未出现

标签 java swing oop jlabel

我正在尝试使用 JLabel 将图像插入我的 GUI 中。但并没有出现

这是我的部分代码

public FirstAid() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 700, 507);
    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);
    contentPane.setLayout(new BorderLayout(0, 0));

    tabbedPane = new JTabbedPane(JTabbedPane.TOP);
    contentPane.add(tabbedPane, BorderLayout.CENTER);

    panel = new JPanel();


ImageIcon imageIcon = new ImageIcon("src/method_1.png");
    JLabel label = new JLabel(imageIcon);

    panel.add(label);
    tabbedPane.addTab("name", null, panel, null);

最佳答案

您创建一个名为 panel 的 JPanel,向其中添加一个 JLabel,但此后不对 panel 变量执行任何操作。您必须将其添加到 GUI 中才能看到 JLabel 和它可能保留的图像。我猜测您想将面板添加到 JTabbedPane,但没有更多信息,我只能猜测。

编辑:您编辑的问题现在显示您正在将 JPanel 添加到 JTabbedPane。如果您仍然看不到图像,则问题可能出在您读取图像时。我自己使用 ImageIO.read(...) 并尝试以 InputStream 或 URL 的形式读取图像。所有这些方法的关键是确保图像路径正确,并且不要对您如何认为它是正确的做出任何假设。唯一确定的方法就是测试它。

关于java - 图像未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28395260/

相关文章:

java - HttpURL连接 : How does client and server keep in sync

java - 从智能卡读取私钥以对XML文档进行数字签名

java - 使用 BufferedReader 读取多行整数时出错

java - 有没有办法用 JList 获取垂直索引?

Java虚拟对象

java - 为什么这个 RadialGradientPaint 绘制不正确?

java - JLabel 根据内部值不断移动

javascript - VideoJS v5 - 在 ES6 中添加自定义组件 - 我做得对吗?

oop - 为什么面向对象中的方法是 "private"?

java - 自定义类的克隆副本