JAVA学习笔记(四十五) - 布局管理器

FlowLayout流式布局管理器

/*
 * FlowLayout流式布局管理器
 */
public class Test03 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("button1");
        Button btn2=new Button("button2");
        Button btn3=new Button("button3");
        Button btn4=new Button("button4");

        frame.add(btn1);
        frame.add(btn2);
        frame.add(btn3);
        frame.add(btn4);

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        //frame.setLayout(new FlowLayout());//设置窗口布局为流式布局,默觉得边框布局
        frame.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 10));//设置窗口布局为流式布局,默觉得边框布局
        frame.setVisible(true);
    }
}

BorderLayout边框布局管理器

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;

/*
 *BorderLayout边框布局管理器
 */
public class Test04 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("button1");
        Button btn2=new Button("button2");
        Button btn3=new Button("button3");
        Button btn4=new Button("button4");
        Button btn5=new Button("button5");

        frame.setLayout(new BorderLayout(10,5));

        frame.add("North", btn1);
        frame.add("South",btn2);
        frame.add("West",btn3);
        frame.add("East",btn4);
        frame.add("Center",btn5);//默认将组件加入到Center中间区域
        frame.add("North",new Button("button6"));

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        frame.setBackground(Color.gray);
        frame.setVisible(true);
    }
}

GridLayout网格布局管理器

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;

/*
 *GridLayout网格布局管理器
 */
public class Test05 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("button1");
        Button btn2=new Button("button2");
        Button btn3=new Button("button3");
        Button btn4=new Button("button4");
        Button btn5=new Button("button5");
        Button btn6=new Button("button6");
        Button btn7=new Button("button7");

        frame.setLayout(new GridLayout(0, 2));//设置窗口为网格布局

        frame.add(btn1);
        frame.add(btn2);
        frame.add(btn3);
        frame.add(btn4);
        frame.add(btn5);
        frame.add(btn6);
        frame.add(btn7,2);//将组件加入到指定的网格中,索引从0開始。组件開始移动

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        frame.setBackground(Color.gray);
        frame.setVisible(true);
    }
}

CardLayout卡片布局管理器

import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Panel;

/*
 * CardLayout卡片布局管理器
 */
public class Test06 {
    public static void main(String[] args) {
        Frame frame=new Frame("我的窗口");
        Panel pnl1=new Panel();
        Panel pnl2=new Panel();
        Panel pnl3=new Panel();

        CardLayout c=new CardLayout();//创建卡片布局管理器
        frame.setLayout(c);//设置窗口为卡片布局
        pnl1.setBackground(Color.red);
        pnl2.setBackground(Color.yellow);
        pnl3.setBackground(Color.blue);

        //向窗口中加入面板组件,并指定名称
        frame.add(pnl1,"first");
        frame.add(pnl2,"second");
        frame.add(pnl3,"third");

        c.last(frame);//显示最后一个卡片。即最后加入的组件
        c.previous(frame);//显示上一个卡片
        c.show(frame, "first");//显示名称为first的卡片

        frame.setSize(300, 300);
        frame.setVisible(true);
    }
}
posted on 2017-08-07 17:10  ljbguanli  阅读(215)  评论(0)    收藏  举报