文档介绍:JAVA语言程序设计第十二章高级用户界面GUI设计
上一章重点讲解了程序设计界面中用到的各种组件,如标签、按钮、列表框等的构造方法、方法以及这些组件所产生事件的响应。本章介绍界面的设计方法,利用java提供的界面布局管理器将容器中的组件进行科学的组织与管理,保证用户界面的美丽漂亮。
。分别是FlowLayout、BorderLayout、CardLayout、GridLayout和GridBagLayout,每种布局都对应一种布局策略,。 ,分别是BoxLayout、ScrollPaneLayout、ViewportLayout和OverLayout。
BorderLayout 类的构造方法
功能说明
BorderLayout()
构造新的BorderLayout布局
BorderLayout(int hgap,int vgap)
构造组件之间具有指定间隔的BorderLayout 布局
FlowLayout类的构造方法
功能说明
FlowLayout()
使用居中方式构造新的FlowLayout布局
FlowLayout(int align)
使用给定对齐方式构造新的FlowLayout布局
FlowLayout(int align,int hgap,int vgap)
使用给定对齐方式构造新的FlowLayout布局
各组件之间有相应的间隔
BorderLayout的布局策略是把容器内的空间划分为东、西、南、北、中5个区域分别用英文的East、West、South、North、Center表示,向容器中加入每个组件都要指明它放在容器的哪个区域。已分配组件的区域可以向未分配组件的区域扩展。
FlowLayout的布局策略是将容器中的组件按照加入的先后顺序从左向右排列。如果一行排满转下一行继续,每行均采取居中排列。
// 使用BorderLayout类在窗口中设计与布局按钮,实现按钮交替消失与出现例12_1
import .*;
import .*;
import .*;
public class GUI12_1 extends JFrame implements ActionListener {
private JButton b[];
private String names[]={"Hide North","Hide South","Hide East","Hide West",
"Hide Center"};
private BorderLayout layout; //定义布局对象Layout
public GUI12_1() {
super("BorderLayout 演示程序");
layout=new BorderLayout(5,5);//创建BorderLayout对象,设置各组件的间隔是5
Container c=getContentPane();
(layout); //对容器设计布局为BorderLayout
b=new JButton[];
for(int i=0;i<;i++) {
//创建5 个按钮b0--b4,名称为names[]数组中的值
b[i]=new JButton(names[i]);
b[i].addActionListener(this); //将监听者分别注册给按钮
}
(b[0], ); //将按钮b[0]放置北方
(b[1], ); //将按钮b[1]放置南方
(b[2], ); // 将按钮b[2]放置东方
(b[3], ); // 将按钮b[3]放置西方
(b[4], ); // 将按钮b[4]放置中央
setSize(300,200);
show();
}
public void actionPerformed(ActionEvent e)
{
for(int i=0;i<;i++)
if(()==b[i])
b[i].setVisible(false); //设置按钮不可见
else
b[i].setVisible(true); //设置