Java Swing MigLayout,将跨行中的两个元素居中

标签 java swing miglayout

我正在处理具有 3 列和 4 行的 MigLayout 表单,如下所示:

"wrap 3",
"[15%] 15px [45%] 15px [40%]",
"20 [] 15 [] 15 [grow,fill] 15 []"

现在我的目标是让它看起来像这样:

.------------------------------------.
| 15% |     45%      |     40%       |
|------------------------------------|
|     |              |               |
|------------------------------------|
|     |              |               |
|------------------------------------|
|           button,button            |
`------------------------------------´

我希望最后一行的按钮居中,所以我假设它首先要求我将第 4 行的 3 列与 "span 3, center" 组件约束分开按钮。

这只使用一个按钮就可以很好地工作,但是我在弄清楚如何添加第二个按钮时遇到问题,同时保持两个按钮同时位于同一行的中心。如果我在第二个按钮上添加相同的约束,它会完美地居中显示在下一行的第一个按钮下方。

最佳答案

解决方案是同时拆分:拆分定义了应该存在于跨单元格中的组件数:

panel.add(firstButton, "span, split 2, center");
panel.add(secondButton);

旁白:没有计数的跨度默认为一个高数字,它实际上意味着“全部”

关于Java Swing MigLayout,将跨行中的两个元素居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2609060/

相关文章:

java - 在 spring boot 中将响应下载为 POST 请求的文本文件

java - java Jframe上的图像渲染

java - 如何在Java derby中自动增加数据库列?

java - getATR() 不会重置 javax.smartcardio 中的智能卡

java - 使用 cellEditor() 删除带有 jButton 的 jTable 行;

Java - 是否可以随时检测鼠标按钮四或按键?

gradle - 如何在gradle中进行miglayout摇摆

Java MigLayout 拉伸(stretch)为 BorderLayout

Java MigLayout问题

java - 内部类是轻量级的吗?