JAVA布局管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JA V A布局管理

一、FlowLayout(流布局管理):其组件的放置规律是从上到下,从左到右依次进行放置。构造方法有下列几种:

1.F lowLayout():创建每行组件居中对齐、组件间距为5个像素单位。

2.F lowLayout(int align):创建指定每行的对齐方式、组件间距为5个像素单位。

align取值表示组件的对齐方式:CENTER(居中对齐),LEFT(左对齐),RIGHT(右对齐)。

二、BorderLayout(边框布局管理):将容器分为上、下、左、右、中五个区域,分别对应North(北区),South(南区),West(西区),East(东区)和Center(中区)。用add(component,index)方法向容器中添加组件,其中第二个参数指明组件位置,其取为:BorderLayout.North,BorderLayout.South,BorderLayout.East,BorderLayout.West,BorderLayout.Center。其构造方法有中下几种:

1.B orderLayout():创建组件间无间距的布局对象。

2.B orderLayout(int hgap,int vgap):创建指定组件间距的布局对象。

三、GridLayout(网格布局管理器):将容器分成尺寸相同

的网格,组件被放在网格的空白处,顺序与流式布局一样。

网格中组件大小相同。其构造方法有下列几种:

1.GridLayout()以每行一列的方式构建一个GridLayout

对象。

2.GridLayout(int row,int columns):根据指定行数和列数

构造一个GridLayout对象,组件间距为0。

3.GridLayout(int row,int columns,int hgap,int,vgap): 根据

指定行数和列数构造一个GridLayout对象,组件间距按指定值设置。

四、CardLayout( 卡片布局管理器):它将组件放在一系

列卡片上,一次只能看到一张卡片,一张卡片只能放一个组件。使用构造方法CardLayout()可以构建CardLayout对象。

组件按添加顺序存放在卡片序列中,使用下列方法将组件添加到容器中:

add(Component,component,String name);

name是卡片中组件的标识。

为了使组件在使用CardLayout容器中可见,可使用CardLayout对象的下列方法:

1)first(Container container):显示第一张卡片。

2) last(Container container):显示最后一张卡片。

3)nextContainer container):显示下一张卡片。

4)show(Container container,String name):显示容器中指定名称的卡片。

五、GridBagLayout(网格块布局管理器):与GridLayout

相似,不同的是GridBagLayout的组件大小可以不同,可以按任意顺序添加。使用较少。

举例:

1、用户登录界面的创建:

import javax.swing.*;

import java.awt.*;

publib class login{

public static void main(String agrs[]){

JFrame f=new JFrame();

f.setSize(220,120);

s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JLabel l_username=new JLabel(“用户名”);

JLabel l_password=new JLabel(“密码”);

JTextField t_username=new JTextField();

JPasswordField t_password=new JPasswordField();

JButton b1=new JButton(“登录”);

JButton b2=new JButton(“注册”);

JButton b3=new JButton(“取消”);

JPanel p1=new JPanel();

p1.setLayout(new GridLayout(2,2)); p1.add(l_username);

p1.add(l_password);

p1.add(t_username);

p1.add(t_password);

JPanel p2=new JPanel();

p2.setLayout(new FlowLayout()); p2.add(b1);

p2.add(b2);

p2.add(b3);

f.setLayout(new BorderLayout());

f.add(p1,Border.CENTER);

f.add(p2,Border.SOUTH);

f.setVisible(true);

}

}

JAVA事件处理

所谓事件处理,是指Java应用能够对某些事件作出响应。发出事件的对象称为事件源,对事件感兴趣的对象,称为监听器。事件处理就是事件源发出事件,监听器捕获事件并作出响应的过程。

事件可以来自Java应用程序范围之内,例如用户点击按钮,也可以来自应用程序范围之外,例如应用服务器关机等。一个事件中,通常包含一些必要的信息,例如事件源和事件类型等。在Java中,每种事件都是一个事件类,而具体的事件则是事件类的实例。

Java应用运行过程中,程序本身及其周边环境不断发生变化,可能的事件种类非常之多。对所有事件都响应是不现实的,因此,事件处理允许Java应用有选择地响应某些事件。这个选择感兴趣的事件的过程,称为注册。因此,所谓注册,就是某对象向事件源提出申请,表明自己对某类事件感兴趣,希望该事件发生时得到通知。提出申请的对象称为监听器。监听器将接收到自己感兴趣的事件,其他不感兴趣的事件则接收不到。

监听器之所以要捕获某类事件,是因为这类事件与其有关系。例如,“确定”按钮的action事件的监听

相关文档
最新文档