Java Swing BorderLayout使一个区域不可调整大小

时间:2013-10-02 18:37:07

标签: java swing layout-manager border-layout

我有一个Java Swing GUI,其中顶级布局管理器是BorderLayout。我希望这样当用户将GUI的大小调整到首选大小以下时,中心区域不能再调整大小(或者至少在调整大小时优先),并且北/南区域会变小。

现在它正在运作的方式是我的北部和南部面板优先,并首先吹走我的中心区域。我已经尝试在中心面板上添加了所有组件后设置最小尺寸

centerPanel.setMinimumSize(centerPanel.getPreferredSize());

但这不适合我。它仍然是第一个在调整大小时最小化的区域。

2 个答案:

答案 0 :(得分:2)

也许BoxLayout会起作用。框布局将遵循组件的最小尺寸。有关详细信息,请参阅How to Use Box Layout上Swing教程中的部分。

答案 1 :(得分:0)

我认为任何比GridBagLayout更简单的东西都不会起作用。 BorderLayout不尊重最小尺寸。