我使用的Java Swing使用的BoxLayout布局管理简单的GUI。 它基本上是由单一JPanel的,具有能够由用户添加额外JPanels。
具有两个JPanels(第一个,以及一个附加的),该格式是正确的:
但是,当被加入更JPanels,额外的空间被添加到帧的左侧:
下面是我有:
public void updateListFrameContentPane(Container mainPane) {
mainPane.setLayout(new GridLayout(1,1+chatPanels.size()));
JPanel firstPanel = new JPanel();
firstPanel.setLayout(new BoxLayout(firstPanel, BoxLayout.Y_AXIS));
firstPanel.add(friendsLabel);
firstPanel.add(listScrollPane);
mainPane.add(firstPanel);
for(JPanel chatPanel : chatPanels)
mainPane.add(chatPanel);
}
其中chatPanels
是一个HashSet<JPanel>
我尝试使用setMaximumSize
每个JPanel的方法,让他们变得更大,但没有帮助。 我该如何摆脱多余的空间?