BorderLayout对齐

时间:2015-04-12 13:44:40

标签: java swing layout-manager gridbaglayout border-layout

我的 JPanel 带有 BorderLayout 。在 JPanel 中心中,我有另一个 JPanel GridBagLayout 。我想在左上角的第二个 JPanel 一些 JLabels 中垂直添加。我需要 BorderLayout ,因为我需要在区域添加我的标题。

我怎样才能做到这一点?

enter image description here

1 个答案:

答案 0 :(得分:1)

你真的不需要GridBagLayout,你可以更轻松地使用BoxLayout

public class Popup {
  public static void main(String[] args) {
      JFrame window = new JFrame("Title");

      window.add(new JLabel("North", JLabel.CENTER), BorderLayout.NORTH);
      window.add(new JLabel("South", JLabel.CENTER), BorderLayout.SOUTH);
      window.add(new JLabel("West"),  BorderLayout.WEST);
      window.add(new JLabel("East"),  BorderLayout.EAST);

      JPanel centerPanel = new JPanel();
      centerPanel.setLayout(new BoxLayout(centerPanel, BoxLayout.Y_AXIS));

      centerPanel.add(new JLabel("Here"));
      centerPanel.add(new JLabel("Here"));
      centerPanel.add(new JLabel("Here"));
      centerPanel.add(new JLabel("Here"));

      window.add(centerPanel, BorderLayout.CENTER);

      window.setSize(600, 400);
      window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      window.setVisible(true);
   }
}