构造函数 | |
---|---|
名称 | 用途 |
FlowLayout() | 构造一个新的 FlowLayout,它是默认居中对齐的,默认的水平和垂直间隙是5个像素 |
FlowLayout(int align) | 构造一个新的 FlowLayout,它具有指定的对齐方式,默认的水平和垂直间隙是 5 个像素 |
align——五个参数值及含义如下:
0或FlowLayout.lEFT ,控件左对齐
1或FlowLayout.CENTER ,居中对齐
2或FlowLayout.RIGHT ,右对齐
3或FlowLayout.LEADING,控件与容器方向开始边对应
4或FlowLayout.TRAILING,控件与容器方向结束边对应
如果是0、1、2、3、4之外的整数,则为左对齐
基本的成员函数 | ------ |
---|---|
Void setAlignment(int align) | 设置此布局的对齐方式(参数值与上面相同) |
void setHgap(int hgap) | 设置组件之间以及组件与 Container 的边之间的水平间隙 |
void setVgap(int vgap) | 设置组件之间以及组件与 Container 的边之间的垂直间隙 |
下面看具体应用:
package cn.com;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class CheckPhoneNum extends JFrame
{
final private int Infor_Nums = 3; //录入的信息个数
private JTextField[] tests;
private JButton button; //验证按钮
public CheckPhoneNum()
{
init();
}
private void init()
{
FlowLayout flow_layout = new FlowLayout(FlowLayout.LEFT);
flow_layout.setHgap(20);
flow_layout.setVgap(20);
this.tests = new JTextField[this.Infor_Nums];
for(int i=0 ; i<this.tests.length ; i++)
this.tests[i] = new JTextField();
JPanel center_pan = new JPanel(); //创建中间容器
center_pan.setLayout(flow_layout);
this.button = new JButton("验证");
this.button.setPreferredSize(new Dimension(60 , 30));
JLabel L_name = new JLabel ("姓名:");
L_name.setFont(new Font("楷体",Font.BOLD,20));
center_pan.add(L_name); //添加在面板上
this.tests[0].setPreferredSize(new Dimension(250 , 30) ); //设置输入框的大小
this.tests[0].setHorizontalAlignment(this.tests[0].CENTER); //设置居中显示
center_pan.add(this.tests[0]); //添加在面板上
JLabel L_sex = new JLabel ("性别:");
L_sex.setFont(new Font("楷体",Font.BOLD,20));
center_pan.add(L_sex); //添加在面板上
this.tests[1].setPreferredSize(new Dimension(250 , 30) );//设置输入框的大小
this.tests[1].setHorizontalAlignment(this.tests[0].CENTER); //设置居中显示
center_pan.add(this.tests[1]); //添加在面板上
JLabel L_phone = new JLabel ("电话:");
L_phone.setFont(new Font("楷体",Font.BOLD,20));
center_pan.add(L_phone); //添加在面板上
this.tests[2].setPreferredSize(new Dimension(250 , 30) );//设置输入框的大小
this.tests[2].setHorizontalAlignment(this.tests[0].CENTER); //设置居中显示
center_pan.add(this.tests[2]); //添加在面板上
center_pan.add(this.button);
this.add(center_pan , BorderLayout.CENTER);
this.setTitle("用户信息录入界面");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.setSize(400, 250);
this.setLocationRelativeTo(null);
}
}
效果如下: