Java布局管理器setLayout()

Java布局管理器setLayout()

1。FlowLayout
public FlowLayout(int align,int hgap,int vgap)
创建一个新的流布局管理器,具有指定的对齐方式以及指定的水平和垂直间隙。
对齐参数的值必须是以下之一:FlowLayout.LEFT、FlowLayout.RIGHT、FlowLayout.CENTER、FlowLayout.LEADING 或 FlowLayout.TRAILING。


参数:
align - 对齐值
hgap - 组件之间以及组件与 Container 的边之间的水平间隙
vgap - 组件之间以及组件与 Container 的边之间的垂直间隙

 


 

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;

/*
FlowLayout()建立一个新的Flow Layout,此FlowLayout默认值是居中对齐,组件彼此有5单位的水平与垂直间距。 
FlowLayout(int align)建立一个新的Flow Layout,此FlowLayout可设置排列方式,组件彼此有5单位的水平与垂直 间距。 
FlowLayout(int align,int hgap,int vgap)建立一个新的Flow Layout,此FlowLayout可设置排列方式与组件间距。 
*/

public class FlowLayoutDemo{
public FlowLayoutDemo(){
JFrame f=new JFrame();
 
		
 /*你可以使用有间距的FlowLayout构造函数,使FlowLayout的排列具有间距,并
  *并可利用排列方向参数来指定靠什么方向排列,FlowLayout共有五种排列方式,
  *依次是CENTER(默认值),LEFT,RIGHT,LEADING,TRAILING,若我们将下面程序第13
  *行改成contentPane.setLayout(new FlowLayout(FlowLayout.LEFT));   	         	         	      
  */     
	     Container contentPane=f.getContentPane();
 		 contentPane.setLayout(new FlowLayout());   	     
 		 contentPane.add(new JButton("first"));
   	     contentPane.add(new JButton("second"));
   	     contentPane.add(new JButton("third"));
   	     contentPane.add(new JButton("fourth"));
   	     contentPane.add(new JButton("fifth"));
   	     contentPane.add(new JButton("Last"));
   	     
   	     f.setTitle("FlowLayout");
   	     //f.pack();//必须将f.pach()去掉,否则setSize功能将没有作用
   	     f.setSize(400,220);
   	     f.setVisible(true);
        f.addWindowListener(
           new WindowAdapter(){
               public void windowClosing(WindowEvent e){
                  System.exit(0);	
               }	
           }	
        );
   }
   public static void main(String[] args){
     FlowLayoutDemo b=new FlowLayoutDemo();	
   }
}


2GridLayout
public GridLayout(int rows,
                  int cols,
                  int hgap,
                  int vgap)创建具有指定行数和列数的网格布局。给布局中的所有组件分配相等的大小。
此外,将水平和垂直间距设置为指定值。水平间距将置于列与列之间。将垂直间距将置于行与行之间。

rows 和 cols 中的一个可以为零(但不能两者同时为零),这表示可以将任何数目的对象置于行或列中。

所有 GridLayout 构造方法都服从这一规定。


参数:
rows - 该 rows 具有表示任意行数的值零
cols - 该 cols 具有表示任意列数的值零
hgap - 水平间距
vgap - 垂直间距
3,BorderLayout
public BorderLayout(int hgap,
                    int vgap)用指定的组件之间的水平间距构造一个边界布局。水平间距由 hgap 指定,而垂直间距由 vgap 指定。

参数:
hgap - 水平间距。
vgap - 垂直间距。
4,CardLayout
public CardLayout(int hgap,
                  int vgap)创建一个具有指定的水平和垂直间隙的新卡片布局。水平间隙置于左右边缘。垂直间隙置于上下边缘。

参数:
hgap - 水平间隙。
vgap - 垂直间隙。

你可能感兴趣的:(java)