EAST的边框布局设置组件覆盖右侧的整个空间

时间:2014-05-19 13:31:38

标签: java border-layout

我将组件放置在CENTER,SOUTH和EAST的边框布局中。问题是默认情况下,南方的组件占据了整个底层空间。但是也不想让南方组件占据右侧面板的空间。这是图像: - https://www.dropbox.com/s/8slbh7y88ri1lyn/Untitled.png可以通过在其他边框布局中放置边框布局,但我无法做到。

1 个答案:

答案 0 :(得分:0)

  

可以通过在其他边框布局中放置边框布局,但我不能这样做。

正如我在评论中所说,这实际上是正确的方法。

// assume "main" is your current top-level container
main.setLayout(new BorderLayout());
main.add(rightPanel, BorderLayout.EAST);
JPanel leftColumn = new JPanel();
leftColumn.setLayout(new BorderLayout());
main.add(leftColumn, BorderLayout.CENTER);

leftColumn.add(bottomPanel, BorderLayout.SOUTH);
leftColumn.add(centerPanel, BorderLayout.CENTER);

现在主要布局中没有SOUTH组件,因此rightPanel将占用整个垂直空间。 bottomPanel将占据分配给leftColumn的空间的南区域,centerPanel将获得左上角的剩余空间。