1

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

它现在的工作方式是我的南北面板优先并首先吹走我的中心区域。一旦添加了所有组件,我就尝试在中心面板上设置最小尺寸

centerPanel.setMinimumSize(centerPanel.getPreferredSize());

但这对我不起作用。它仍然是第一个在调整大小时最小化的区域。

4

2 回答 2

2

也许 BoxLayout 会起作用。盒子布局将尊重组件的最小尺寸。有关更多信息,请参阅 Swing 教程中有关如何使用框布局的部分。

于 2013-10-02T19:05:50.003 回答
0

我认为没有什么比 GridBagLayout 更简单的了。BorderLayout 在遵守最小尺寸方面并不好。

于 2013-10-02T18:40:45.957 回答