天天看点

2布局管理器

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();
    }
}      
2布局管理器
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();
    }
}