【问题标题】:Adding a JLabel to a Panel - how to layout the components properly?将 JLabel 添加到面板 - 如何正确布局组件?
【发布时间】:2012-11-28 12:51:47
【问题描述】:

我想在框架中添加一些单词,所以我使用了panel1.add(new JLabel("Hello"));

但是有些按钮的大小和位置是自定义的。我听说我们必须setLayout(null) 来自定义按钮,这也导致标签不显示。 (不知道是不是这个原因)

解决办法是什么?

【问题讨论】:

  • paperPaint or some another Application 上绘制您的视图的粗略草图,将图像粘贴到此处,以便以最佳方式指导您。你打电话给setLayout(null) 是为了什么。可能是您忘记指定JPanel 的位置,JLabel 存在于该位置。尽管如前所述,使用 Absolute Positioning 确实不是让事情移动的好选择。

标签: java swing jpanel jlabel layout-manager


【解决方案1】:

我会告诉你 Java tutorials 来布置组件 - 他们很好地介绍了 Swing 格式和布局。

而不是调用setLayout(null),您可能应该调用特定的LayoutManager,例如setLayout(new FlowLayout());,以便Java 知道如何显示您的组件。在尝试将组件添加到 JPanel 之前,您应该调用它。您给setLayout() 方法提供的LayoutManager 类型将指示Java 以特定方式绘制GUI,例如在网格中,或者只是一个接一个。上面链接的教程将解释所有这些,并有不同LayoutManagers 的可视化示例

【讨论】:

    【解决方案2】:

    不要使用空布局。定义如何放置按钮的规则,并使用一些 LayoutManager 或创建自己的。

    【讨论】:

      猜你喜欢
      • 2015-03-01
      • 1970-01-01
      • 2010-11-14
      • 2013-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-17
      • 2014-07-07
      相关资源
      最近更新 更多