我正在苦苦挣扎MIGLayout
- 我一般都知道它的基础知识,但今天遇到了一个问题。
为了简化情况:
我想要三行,这样在第一行和第三行中有不固定数量的对象(前JTextField
组件)。第一行的第一个文本字段的宽度应与第三行的第一个文本字段的宽度相同,依此类推。
行中的最后一个文本字段(包含其中的大部分)应该随着其余的帧大小而增长。
这两行应该用 来区分JSeparator
,也应该是帧的长度。
我已经看到了如何使用 MigLayout 在面板上绘制分隔符,但是由于我需要将字段完全对齐到另一个下方,所以它对我不起作用。
这是我的代码:
public class Main extends JFrame {
public static void main(String[] args) {
JFrame.setDefaultLookAndFeelDecorated(true);
new Main();
}
public Main() {
setLayout(new MigLayout(new LC()));
setPreferredSize(new Dimension(800, 300));
CC cc = new CC().growX();
CC wcc = new CC().growX().wrap();
add(new JTextField("Area 1"), cc);
add(new JTextField("Area 2"), cc);
add(new JTextField("Area 3"), wcc);
add(new JSeparator(), new CC().spanX().pushX().growX().wrap());
add(new JTextField("Longer Area 1"), cc);
add(new JTextField("Longer Area 2"), cc);
setDefaultCloseOperation(EXIT_ON_CLOSE);
pack();
setVisible(true);
}
}
这是它的样子:
这就是我希望它的样子:
这个问题的最佳解决方案是什么?文本字段的数量将动态变化。提前致谢。