FillLayout充满式布局

1 控件水平排列放置 (new FillLayout(SWT.HORIZONTAL))

FillLayout充满式布局_第1张图片

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
public class Test{
	public static void main(String[] args){
		Display display=new Display();
		Shell shell=new Shell(display);
		shell.setText("FillLayout充满式布局");
		
		FillLayout layout=new FillLayout(SWT.HORIZONTAL);
		//FillLayout layout=new FillLayout();
		//layout.type=SWT.HORIZONTAL;//默认就是水平的,所以上面这句话有和没有的效果是一样的	
		shell.setLayout(layout);
		
		new Button(shell,SWT.NONE).setText("bt1");
		new Button(shell,SWT.NONE).setText("bt2");
		new Button(shell,SWT.NONE).setText("bt3");
 
		shell.layout();//重新布局,这里有跟没有用似的
		//打开窗口,进行窗口的显示
		shell.setSize(400,400);
		//shell.pack();
		shell.open();
		while(!shell.isDisposed()){
			//当窗口没有被释放的时候
			if(!display.readAndDispatch()){
				display.sleep();
			}		
		}
		display.dispose();
	}
}

2.控件垂直排列放置 (new FillLayout(SWT.VERTICAL))————且不留白

FillLayout充满式布局_第2张图片

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
public class A{
	public static void main(String[] args){
		Display display=new Display();
		Shell shell=new Shell(display);
		shell.setText("FillLayout充满式布局");
		
		FillLayout layout=new FillLayout(SWT.VERTICAL);
		//FillLayout layout=new FillLayout();
		//layout.type=SWT.HORIZONTAL;//默认就是水平的,所以上面这句话有和没有的效果是一样的	
		shell.setLayout(layout);
		
		new Button(shell,SWT.NONE).setText("bt1");
		new Button(shell,SWT.NONE).setText("bt2");
		new Button(shell,SWT.NONE).setText("bt3");

		shell.layout();//重新布局,这里有跟没有用似的
		//打开窗口,进行窗口的显示
		shell.setSize(400,400);
		//shell.pack();
		shell.open();
		while(!shell.isDisposed()){
			//当窗口没有被释放的时候
			if(!display.readAndDispatch()){
				display.sleep();
			}		
		}
		display.dispose();
	}
}

3.控件垂直排列放置 (new FillLayout(SWT.VERTICAL))————

设置上下、左右之间的留白,并设置控件之间的间隙

FillLayout充满式布局_第3张图片

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
public class B{
	public static void main(String[] args){
		Display display=new Display();
		Shell shell=new Shell(display);
		shell.setText("FillLayout充满式布局");
		
		FillLayout layout=new FillLayout(SWT.VERTICAL);
		//FillLayout layout=new FillLayout();
		//layout.type=SWT.HORIZONTAL;//默认就是水平的,所以上面这句话有和没有的效果是一样的	
		layout.marginHeight=20;//设置上下补白的高度
		layout.marginWidth=20;//设置左右留白的宽度
		layout.spacing=10;//设置控件之间的空隙
		shell.setLayout(layout);
		
		new Button(shell,SWT.NONE).setText("bt1");
		new Button(shell,SWT.NONE).setText("bt2");
		new Button(shell,SWT.NONE).setText("bt3");

		shell.layout();//重新布局,这里有跟没有用似的
		//打开窗口,进行窗口的显示
		shell.setSize(400,400);
		//shell.pack();
		shell.open();
		while(!shell.isDisposed()){
			//当窗口没有被释放的时候
			if(!display.readAndDispatch()){
				display.sleep();
			}		
		}
		display.dispose();
	}
}

 

 

 

你可能感兴趣的:(FillLayout充满式布局)