我有一个带有GridLayout的JPanel,包含1行和2列。
在第一列中,我有一个由Jpanel和Jtree组成的JPanel。 在第二列中,我有一个由JTable组成的JScrollPane。
如何将JscrollPAne居中对齐以显示垂直居中对齐?目前,它显示在顶部,而不是在中心。
这是一张图片:
答案 0 :(得分:2)
第2列中的JScrollPane
,您需要使用JPanel
进行换行。然后,您需要为新JPanel
设置布局管理器。我可能会使用GridBagLayout
,因为它可以让您获得更精确的控制,并且您可以实现所需的垂直居中。
您必须在包装器JPanel
中添加假JPanel
以填写您要查找的空白区域。
总之,你将拥有:
JPanel
GridLayout
(1行,2列)
第1栏:
JTree
第2栏:
JPanel
的GridBagLayout
:
JPanel
与GridBagConstraints
(对于whitspace)JScrollPane
与GridBagConstraints
如果您还想要空格,可能需要在JPanel
下方添加另一个JScrollPane
。我不是100%肯定你在寻找什么。使用GridBagConstraints
,您可以精确控制布局。
答案 1 :(得分:1)
有一个布局管理器可以保存你:)在第二列中,使用一个带GridBagLayout
的面板,并将JScrollPane插入面板,你可以使用GridBagConstraints指定面板中组件的位置。
有关详情,请参阅此处:How to Use GridBagLayout