gpt4 book ai didi

java - Swing Jlabel 不显示

转载 作者:行者123 更新时间:2023-12-01 15:48:05 24 4
gpt4 key购买 nike

我正在构建一个 GUI 来说明树。我扩展的 JPanel 没有显示我在构建 JPanel 时创建的 JLabel。这是我的 JPanel 代码:

class NodePanel extends JPanel {
private JLabel content;

NodePanel() {
this.setLayout(new FlowLayout());
this.setBorder(new LineBorder(Color.black));
}

NodePanel(String str) {
this.setLayout(new FlowLayout());
this.setBorder(new LineBorder(Color.black));

content = new JLabel(str);
this.add(content);
}
}

这是我测试它的代码:

NodePanel n1 = new NodePanel(Integer.toString(root.getWeight()));

HuffmanGUI.tp.add(n1);
n1.setBounds((tpWidth / 2) - (panelDim / 2), vertSpace, panelDim, panelDim);

此代码位于操作监听器调用的方法中,我知道它有效,因为面板显示在其应有的位置,但 Jlabel 未显示在其中。为什么会这样?

最佳答案

这很难说,因为我们不知道代码使用的上下文。看起来您正在将空布局与布局管理器混合在一起。

我可能猜测您正在将面板添加到可见的 GUI,并且尚未在面板上使用 revalidate(),因此标签没有尺寸。

如果您需要更多帮助,请发布说明问题的 SSCCE。

关于java - Swing Jlabel 不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6719504/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com