|BorderLayout |FlowLayout |GridLayout AWT----|CardLayout |GridBagLayout Swing--|BoxLayout
java.lang.Object --java.awt.BorderLayout
构造函数:BorderLayout()建立一个没有间距的border layout
BorderLayout(int hgap,int vgap)建立一个组件间有间距的border layout
BorderLayout将版面划分为东、西、南、北、中 例子:
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class BorderLayoutDemo{ public BorderLayoutDemo(){ JFrame f=new JFrame(); Container contentPane=f.getContentPane(); contentPane.setLayout(new BorderLayout()); contentPane.add(new JButton("EAST"),BorderLayout.EAST); contentPane.add(new JButton("WEST"),BorderLayout.WEST); contentPane.add(new JButton("SOUTH"),BorderLayout.SOUTH); contentPane.add(new JButton("NORTH"),BorderLayout.NORTH); contentPane.add(new JLabel("CENTER",JLabel.CENTER),BorderLayout.CENTER); f.setTitle("BorderLayout"); f.pack(); f.setVisible(true); /***read**/ /*处理关闭窗口的操作,若你没写这一段,就算你已经关闭窗口了,但程序并不会终止。 */ f.addWindowListener( new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } } ); /***read**/ } public static void main(String[] args){ BorderLayoutDemo b=new BorderLayoutDemo(); } }
设置组件的间距,你可以使用有间距参数的BorderLayout构造函数,也可以利用BorderLayout的setHgap(int hgap)与 setVgap(int vgap)两个方法来达成。