【问题标题】:How to… using MigLayout如何……使用 MigLayout
【发布时间】:2014-05-14 21:59:09
【问题描述】:

我正在尝试将 MigLayout 用于我的项目,但我很难理解其中的逻辑。

我想在某个面板的顶部和底部放置 2 个标签,标签和面板末端之间的边距为 20px。

此外,标签必须水平居中。

关于如何做到这一点的任何想法?

【问题讨论】:

  • 重复的,请阅读文档,它应该回答你的问题。
  • 不是重复的。我不是要文档,我要的是我的具体问题的解决方案!
  • 您可以考虑展示一些您尝试过但没有奏效的想法
  • 另外你可能想改变你的标题............
  • @MadProgrammer 我尝试过这样的事情:add(footerLabel, "gapbottom 20px, center") 但它似乎不起作用...

标签: java swing miglayout


【解决方案1】:

有几种方法可以做到这一点(例如,我们可以使用 insets 代替 gaptop/bottom)。这是一个简单的例子:

JPanel p = new JPanel();
p.setLayout(new MigLayout("fill"));
p.add(new JLabel("1"), "top, gaptop 20px, center, wrap");
p.add(new JLabel("2"), "bottom, gapbottom 20px, center");

上面的示例使用topbottom 将标签定位在面板的顶部和底部。一个更现实的例子,我们在这些标签之间有内容,可能是这样的:

JPanel p = new JPanel();
p.setLayout(new MigLayout("debug, fill, insets 20 0 20 0", "", "[][grow][]"));
p.add(new JLabel("Top"), "center, wrap");
p.add(new JLabel("Center"), "center, grow, wrap");
p.add(new JLabel("Bottom"), "center");

本示例使用插图表示顶部和底部所需的 20px 间隙,这样 20px 间隙不会添加到标签行。

【讨论】:

  • 感谢您的贡献。标签在顶部和底部的位置很好,但它们不在行的中心。还有其他方法吗?
  • 检查我的编辑,我添加了第二个示例,我相信它可以解决这个问题。
猜你喜欢
  • 2018-09-27
  • 2014-01-13
  • 1970-01-01
  • 2011-01-04
  • 1970-01-01
  • 2012-03-01
  • 2020-08-13
  • 2015-10-14
  • 1970-01-01
相关资源
最近更新 更多