Если я правильно понимаю, вам нужен интерфейс, похожий на этот:
+-------- Parent panel --------+
| |
| |
| +--- Child panel ----+ |
| | | |
| | | |
| | | |
| | | |
| +--------------------+ |
| |
| |
+------------------------------+
... и другие компоненты не добавляются на родительскую панель.
Если это так, у меня есть два варианта, о которых я знаю (основываясь на этом вопросе , на который я, очевидно, ответил):
Используйте 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());