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

Fuu*_*Fuu 5 java swing miglayout

我正在使用3列4行的MigLayout表单,如下所示:

"wrap 3",
"[15%] 15px [45%] 15px [40%]",
"20 [] 15 [] 15 [grow,fill] 15 []"
Run Code Online (Sandbox Code Playgroud)

现在我的目标是使其看起来像这样:

.------------------------------------.
| 15% |     45%      |     40%       |
|------------------------------------|
|     |              |               |
|------------------------------------|
|     |              |               |
|------------------------------------|
|           button,button            |
`------------------------------------´
Run Code Online (Sandbox Code Playgroud)

我希望最后一行的按钮居中,因此我假设首先需要将第4行的3列跨成一列,"span 3, center"并在按钮上加上组件约束。

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

kle*_*tra 6

解决方案是同时进行跨越和分割:分割定义了跨越单元中应存在的组件数量:

panel.add(firstButton, "span, split 2, center");
panel.add(secondButton);
Run Code Online (Sandbox Code Playgroud)

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