【问题标题】:ImageLabel not shown in BorderLayout.NORTH - Java SwingImageLabel 未显示在 BorderLayout.NORTH - Java Swing 中
【发布时间】:2015-01-17 21:33:53
【问题描述】:

所以,我有这个 BorderLayout 框架,在 North 有一个面板 pnlLogo。在那个面板中,我有一个标签中的图像。问题是:我想把它放在那个北方的左上角。但是当我 setLayout(null) 和 setbounds 时,图像根本不显示。在正常的流程布局中,它确实出现了。谁知道为什么?

package panels.components;

import java.awt.Color;
import javax.swing.*;

public class Logo extends JPanel{
// Declareren
public JLabel lblLogo;

public Logo(){
    // Layout
    this.setLayout(null);
    this.setBackground(Color.decode("#414141"));

    // Logo -> Label
    ImageIcon image = new ImageIcon("src/media/Logo.jpg");
    lblLogo = new JLabel("", image, JLabel.CENTER);

    // Bounds
    lblLogo.setBounds(10, 10, 210, 84);

    // Panel
    this.add(lblLogo);

}

}

【问题讨论】:

标签: java image label panel jlabel


【解决方案1】:

您为什么不想为面板使用布局? 如果您不希望图像填满整个框架,可以使用

this.setPreferredSize(new Dimension(600, 80));

确保在使用它时不要使用绝对布局 (setLayout(null))。 这是一个有用的方面:click!

【讨论】:

    猜你喜欢
    • 2023-02-06
    • 2021-06-08
    • 1970-01-01
    • 2013-12-08
    • 2012-10-31
    • 1970-01-01
    • 2022-07-12
    • 2011-12-17
    • 1970-01-01
    相关资源
    最近更新 更多