【发布时间】:2011-11-11 02:06:49
【问题描述】:
我根据用户输入创建了任意数量的 JPanel(例如 1-8 个面板)。现在,我使用 FlowLayout 将所有面板放在一个更大的面板中,然后将该面板添加到使用 BoxLayout 的主窗口中。我希望面板适合主窗口的宽度,但现在它们非常小。我应该使用不同的布局还是有办法做到这一点?
【问题讨论】:
标签: java swing user-interface jpanel
我根据用户输入创建了任意数量的 JPanel(例如 1-8 个面板)。现在,我使用 FlowLayout 将所有面板放在一个更大的面板中,然后将该面板添加到使用 BoxLayout 的主窗口中。我希望面板适合主窗口的宽度,但现在它们非常小。我应该使用不同的布局还是有办法做到这一点?
【问题讨论】:
标签: java swing user-interface jpanel
您必须选择GridLayout 或GridBagLayout。
【讨论】:
是的,您应该使用不同的布局管理器。使用 BorderLayout(教程here),它会拉伸所有内容以适应容器。
此外,BorderLayout 不允许在每个区域中使用多个组件,因此您将需要另一个子面板来容纳您的面板。不要为该子面板使用 FlowLayout,因为它不会具有您正在寻找的拉伸行为。
【讨论】: