我有一个由JPanel标识的myPanel。我创建了一系列JButton,然后将它们add()命名为myPanel。在生成和添加循环的最后,我调用myPanel.validate()。出现按钮。

问题是面板的尺寸受到影响。无论我选择哪种布局管理器,这些按钮总是添加在同一行上(即使它们下方有更多空间)。

我尝试设置myPanel的最大大小并在每个add()之后设置其大小。无论我做什么,在validate()之后,面板都会炸毁,并且应用程序的GUI也被拧紧。

有任何想法吗?

最佳答案

我创建了一系列JButton,并将它们add()到myPanel ...按钮总是添加在同一行上(即使它们下方有更多空间)。


没有默认的布局管理器提供自动包装。您需要指定希望包装发生的方式。在这些情况下,可以使用GridLayout或GridBagLayout。

或者,您可以尝试为此目的编写的Wrap Layout

10-07 20:35