我没有很多迁移经验,所以请指教。我有一个布局,其中第一列是JCheckBox
,跨越2行。第二列有2个JLabel,每行1个。
默认布局似乎是复选框在2行的中心垂直对齐。我希望它与顶部JLabel
中的文字保持一致,因此我在aligny top
上使用了JCheckBox
。
rightSubPanel.add(stepCheck,"span 1 2, aligny top");
rightSubPanel.add(stepTitle);
rightSubPanel.add(subTitle, "gapleft 40");
但JCheckbox
仍略低于相邻JLabel
中的文字。
见附图:
任何人都可以解释这个或提出更好的方法吗?
更新使用调试布局如下所示。解决方案是在每个stepTitles上方添加一个5像素的间隙,例如:
rightSubPanel.add(stepTitle,"gaptop 5");
答案 0 :(得分:1)
在MigLayout的构造函数中添加debug
标记。这将显示每个元素周围的边框。我假设你的例子中的stepCheck
是复选框加“STEP 1:”。 aligny top
将对齐元素的最顶端。我想复选框周围有一些额外的边框,因此它的可见部分不在顶部。您可以在stepTitle
元素周围添加空边框以实现相同的目的。