如果我理解正确,你想要一个这样的界面:
+-------- Parent panel --------+
| |
| |
| +--- Child panel ----+ |
| | | |
| | | |
| | | |
| | | |
| +--------------------+ |
| |
| |
+------------------------------+
…并且您没有将其他组件添加到父面板.
如果是这种情况,你有两个我知道的选择(基于this question,我显然已经回答):
>将GridBagLayout与空的GridBagConstraints对象一起使用,如下所示:
parent_panel.setLayout(new GridBagLayout());
parent_panel.add(child_panel, new GridBagConstraints());
>使用BoxLayout,如下所示:
parent_panel.setLayout(new BoxLayout(parent_panel, BoxLayout.PAGE_AXIS));
Box horizontalBox = Box.createHorizontalBox();
horizontalBox.add(Box.createHorizontalGlue());
horizontalBox.add(child_panel);
horizontalBox.add(Box.createHorizontalGlue());
Box verticalBox = Box.createVerticalBox();
verticalBox.add(Box.createVerticalGlue());
verticalBox.add(horizontalBox); // one inside the other
verticalBox.add(Box.createVerticalGlue());