Java Swing BorderLayout

2018-01-09 19:23 更新

Java Swing教程 - Java Swing BorderLayout


BorderLayout将容器的空间分为五个区域:北,南,东,西和中心。

BorderLayout将容器的空间分为五个区域:北,南,东,西和中心。...

BorderLayout类定义了五个常量来标识五个区域中的每一个。常数为NORTH,SOUTH,EAST,WEST和CENTER。

例如,要向北方区域添加按钮。

JButton northButton = new JButton("North"); 
container.add(northButton, BorderLayout.NORTH);

JFrame的内容窗格的默认布局是BorderLayout。

以下代码显示如何向JFrame的内容窗格添加五个按钮。

import java.awt.BorderLayout;
import java.awt.Container;
//from   w w  w . j  a v  a  2s  .  co m
import javax.swing.JButton;
import javax.swing.JFrame;

public class Main {
  public static void main(String[] args) {
    JFrame frame = new JFrame("BorderLayout Test");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container container = frame.getContentPane();

    // Add a button to each of the five areas of the BorderLayout
    container.add(new JButton("North"), BorderLayout.NORTH);
    container.add(new JButton("South"), BorderLayout.SOUTH);
    container.add(new JButton("East"), BorderLayout.EAST);
    container.add(new JButton("West"), BorderLayout.WEST);
    container.add(new JButton("Center"), BorderLayout.CENTER);

    frame.pack();
    frame.setVisible(true);
  }
}

我们可以在BorderLayout的每个区域最多添加一个组件。我们可以选择将一些区域留空。

要将多个组件添加到BorderLayout的区域,请使用嵌套容器。

如果我们没有为组件指定区域,则将其添加到中心。以下两个语句具有相同的效果:

container.add(new JButton("Close"));
container.add(new JButton("Close"),  BorderLayout.CENTER);

BorderLayout根据面积计算组件的大小。它使用北和南的组件的首选高度。

BorderLayout根据北部和南部的可用空间水平伸展部件的宽度,它不考虑北部和南部部件的首选宽度。

BorderLayout尊重东部和西部的组件的首选宽度,并给予它们垂直填充整个空间所需的高度。

组件在中心区域被水平地和垂直地拉伸以适应可用空间。中心区域不考虑其部件的优选宽度和高度。



以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号