三十三、Java图形化界面设计——布局管理器之null布局(空布局)
摘自http://blog.csdn.net/liujun13579/article/details/7774267
三十三、Java图形化界面设计——布局管理器之null布局(空布局)
一般容器都有默认布局方式,但是有时候需要精确指定各个组建的大小和位置,就需要用到空布局。
操作方法:
1) 首先利用setLayout(null)语句将容器的布局设置为null布局(空布局)。
2) 再调用组件的setBounds(int x, int y, int width,int height)方法设置组件在容器中的大小和位置,单位均为像素。
- x为控件左边缘离窗体左边缘的距离
- y为控件上边缘离窗体上边缘的距离
- width为控件宽度
- height为控件高度
实例:使用空布局精确定位组件的位置
1 // NullLayoutDemo.Java 2 3 import java.awt.*; 4 5 import javax.swing.*; 6 7 public class NullLayoutDemo{ 8 9 JFrame fr; 10 11 JButton a,b; 12 13 NullLayoutDemo() { 14 15 fr = new JFrame(); 16 17 fr.setBounds(100,100,250,150); 18 19 //设置窗体为空布局 20 21 fr.setLayout(null); 22 23 a=new JButton("按钮a"); 24 25 b=new JButton("按钮b"); 26 27 fr.getContentPane().add(a); 28 29 //设置按钮a的精确位置 30 31 a.setBounds(30,30,80,25); 32 33 fr.getContentPane().add(b); 34 35 b.setBounds(150,40,80,25); 36 37 fr.setTitle("NullLayoutDemo"); 38 39 fr.setVisible(true); 40 41 fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 42 43 fr.setLocationRelativeTo(null); //让窗体居中显示 44 45 } 46 47 public static void main(String args[]){ 48 49 new NullLayoutDemo(); 50 51 } 52 53 }
程序运行结果如下: