package com.roadjava.student;
import javax.swing.*;
import java.awt.*;
/**
边界布局就是把内容分成了5个区域,上北下南zuoxiyoudong中
*/
public class BorderLayoutTest extends JFrame {
public BorderLayoutTest(){
Container contentPane = getContentPane();
setSize(600,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new BorderLayoutTest();
}
}
往里面添加内容
package com.roadjava.student;
import javax.swing.*;
import java.awt.*;
import java.util.Locale;
/**
边界布局就是把内容分成了5个区域,上北下南zuoxiyoudong中
*/
public class BorderLayoutTest extends JFrame {
JButton northBtn=new JButton("北边的按钮");
JLabel southLabel = new JLabel("南边的label");
JRadioButton westRadioBtn= new JRadioButton("男");
JTextArea eastArea = new JTextArea("输入内容",10,20);
JButton centerBtn = new JButton("中间的");
public BorderLayoutTest(){
super("测试边界布局");
Container contentPane = getContentPane();
//设置布局管理器
//BorderLayout为边界布局
contentPane.setLayout(new BorderLayout());
//开始布局
contentPane.add(northBtn,BorderLayout.NORTH); //北边的放置到北边
contentPane.add(southLabel,BorderLayout.SOUTH); //南边的标签放置到南边
contentPane.add(westRadioBtn,BorderLayout.WEST); //放置到西边
contentPane.add(eastArea,BorderLayout.EAST);
contentPane.add(centerBtn,BorderLayout.CENTER);
setSize(600,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new BorderLayoutTest();
}
}
改进:
package com.roadjava.student;
import javax.swing.*;
import java.awt.*;
import java.util.Locale;
/**
边界布局就是把内容分成了5个区域,上北下南zuoxiyoudong中
特点:尽可能充满整个所在的容器,一般来说,边界布局就是,根布局,都是在此基础上进行修改
*/
public class BorderLayoutTest extends JFrame {
JButton northBtn=new JButton("北边的按钮");
JLabel southLabel = new JLabel("南边的label");
JRadioButton westRadioBtn= new JRadioButton("男");
JTextArea eastArea = new JTextArea("输入内容",10,20);
JButton centerBtn = new JButton("中间的");
public BorderLayoutTest(){
super("测试边界布局");
Container contentPane = getContentPane();
//设置布局管理器
//BorderLayout为边界布局
// contentPane.setLayout(new BorderLayout());这句可以注释,默认就是边界布局
//开始布局
contentPane.add(northBtn,BorderLayout.NORTH); //北边的放置到北边
southLabel.setPreferredSize(new Dimension(0,80));
contentPane.add(southLabel,BorderLayout.SOUTH); //南边的标签放置到南边
//边界布局特点,尽可能的把边界充满,所以高度无需指定,指定了也不会变
//0表示默认
westRadioBtn.setPreferredSize(new Dimension(200,0));
contentPane.add(westRadioBtn,BorderLayout.WEST); //放置到西边
contentPane.add(eastArea,BorderLayout.EAST);
// contentPane.add(centerBtn,BorderLayout.CENTER); // 默认就是中间
contentPane.add(centerBtn);
setSize(600,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new BorderLayoutTest();
}
}