Java 爪哇-JPanel&;它的内容是如何设置边界

Java 爪哇-JPanel&;它的内容是如何设置边界,java,swing,user-interface,jpanel,jscrollpane,Java,Swing,User Interface,Jpanel,Jscrollpane,我的JFrame上有3个JPanel。不管怎样,当JFrame重新调整大小时,JPanel会垂直和水平扩展,并绑定到JFrame 我想知道如何将其中一个JPanel中的JScrollPane设置为绑定到该JPanel,以便在重新调整JPanel的大小时,该JPanel中的JScrollPane也是如此。这将要求您根据需要为JPanel提供正确的布局,如BorderLayout、GridLayout、BoxLayout或其他(但不是JPanel的默认布局——FlowLayout——它不会更改所持有

我的JFrame上有3个JPanel。不管怎样,当JFrame重新调整大小时,JPanel会垂直和水平扩展,并绑定到JFrame


我想知道如何将其中一个JPanel中的JScrollPane设置为绑定到该JPanel,以便在重新调整JPanel的大小时,该JPanel中的JScrollPane也是如此。

这将要求您根据需要为JPanel提供正确的布局,如BorderLayout、GridLayout、BoxLayout或其他(但不是JPanel的默认布局——FlowLayout——它不会更改所持有组件的首选大小)…如果是BorderLayout,则添加JPanel
BorderLayout.CENTER
(或根据需要再次添加到另一个位置)。如果您不熟悉基本布局,请通读并学习以下教程:


如果您有一个
JPanel
只包含一个
JComponent
,且该组件应与面板一起缩放,则最简单的布局管理器选项之一是
边框布局
并在中心添加内容

JPanel panel = new JPanel( new BorderLayout() );
JComponent componentToAdd = ...;
panel.add( componentToAdd, BorderLayout.CENTER );

不同的布局管理器上有一个整体,描述了不同的管理器在哪些情况下最适合

如果JPanel包含JComboBox并在下面吼叫,那么JScrollPaneA
BorderLayout
在每个位置只能包含一个组件,并且只有
中心
位置可以扩展它的内容范围理货和垂直(请参阅BorderLayout javadoc的最新段落)。因此,您是否可以使用它取决于您的需求(例如,将
JComboBox
添加到
NORTH
并将滚动窗格添加到
中间