我正在尝试将Jpanel放入另一个Jpanel,但我在定位到希望位置(即在Jpanel的中心)时遇到问题,这不允许我对齐框架上的组件。我想要类似于以下链接中给出的接受答案Setting panel at center of screen by using layout 但是这个答案是父母小组没有任何组件的情况,因为我父母小组上的文本字段和标签很少。
答案 0 :(得分:3)
如果要将面板插入另一个面板的中心,可以使用BorderLayout。
我给你写了一个例子:
JPanel main = new JPanel();
JPanel secondPanel = new JPanel();
main.setLayout(new BorderLayout());
main.add(secondPanel, BorderLayout.CENTER);
add(main);
答案 1 :(得分:1)
但是这个答案是父母小组没有任何组件的情况,因为我父母小组上的文本字段和标签很少。
那么在你的主面板中你可能会使用BorderLayout。
在PAGE_START
位置(即北方),您将创建一个包含文字字段和标签的面板。
然后你创建另一个只使用GridBagLayout的面板,并将此面板添加到BorderLayout的“CENTER”。
最后,您创建了子面板,然后可以将其添加到CENTER中的面板中,子面板将在该空间中居中。
布局管理的关键是使用不同的布局管理器嵌套面板以实现您的目标。