JAVA进行GUI程序设计之布局管理(上)

与Windows编程不同,JAVA中GUI组件是使用相对位置来进行布局控制,所以在JAVA进行GUI开发的时候,想像Windows中那样直接对GUI组件进行拖拽摆放,比较困难。

下面介绍三种最常使用的布局管理器:BorderLayout(边框式布局)、FlowLayout(流式布局)、GridLayout(网格式布局)。

BorderLayout(边框式布局):

1.BorderLayout是Frame类的默认布局管理器,布局由东南西北中5个相对位置构成。该布局在调整容器大小时,组件的相对位置不会变化。

2.每个区域只能添加一个组件,如在一个区域中加入了多个组件,那么显示的时候只会显示最后加入的那个。

3.添加组件的时候如果没有指定区域,则默认是CENTER区域。

4.容器缩放时各区域缩放规则: NORTH、SOUTH两个区域可以在水平方向缩放,竖直方向不变; WEST、EAST两个区域可以在竖直方向缩放、水平方向不变; CENTER区域在水平、竖直两个方向均缩放。

实例:

import java.awt.*;
import javax.swing.JFrame;

/**
 * @author Aiml
 *
 */
public class BorderLayoutDemo extends JFrame {

	/**
	 *
	 */
	private static final long serialVersionUID = 1L;

	public BorderLayoutDemo(){
		setSize(400,300);
		setTitle("边框式布局Demo");
		Toolkit kit = Toolkit.getDefaultToolkit();
		Dimension screenSize = kit.getScreenSize();
		int x=(screenSize.width-400)/2;
		int y=(screenSize.height-300)/2;
		setLocation(x,y);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		BorderLayoutDemo frame = new BorderLayoutDemo();

		Button bn = new Button("北部区域");
		Button bs = new Button("南部区域");
        Button bw = new Button("西部区域");
        Button be = new Button("东部区域");
        Button bc = new Button("中部区域");

        frame.add(bn,BorderLayout.NORTH);
        frame.add(bs,BorderLayout.SOUTH);
        frame.add(bw,BorderLayout.WEST);
        frame.add(be,BorderLayout.EAST);
        frame.add(bc,BorderLayout.CENTER);

        frame.setVisible(true);
	}
}
效果图:

放大到全屏:

posted @ 2010-12-19 18:44  SillyCoder  阅读(470)  评论(0编辑  收藏  举报