按钮布局


import java.awt.BorderLayout;//添加awt库
import java.awt.CardLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;


import javax.swing.JButton;//添加swing库
import javax.swing.JFrame;
import javax.swing.JPanel;

public class LayoutTest extends JFrame{//创建LayoutTest子类继承父类JFrame
    JButton btn1,btn2,btn3,btn4,btn5;//定义btn1,btn2,btn3,btn4,btn5
    JPanel m;//容器
    FlowLayout fLayout;//定义布局方式
    GridLayout gLayout;
    BorderLayout bLayout;
    CardLayout cLayout;
    public LayoutTest(String layoutstyle) {//构造函数
        super("布局方式: "+layoutstyle);
        JPanel m = new JPanel();
        FlowLayout f=new FlowLayout(FlowLayout.LEFT);
        GridLayout g=new GridLayout(3,2);
        BorderLayout b=new BorderLayout();
        CardLayout c =new CardLayout(10,10);
        if(layoutstyle=="f")//判断用那种布局
            m.setLayout(f);
        else if(layoutstyle=="g")
            m.setLayout(g);
        else if(layoutstyle=="b")
            m.setLayout(b);
        else if(layoutstyle=="c")
            m.setLayout(c);
        else
            System.out.print("布局方式输入错误!");
        getContentPane().add(m);//将m添加到界面
        btn1=new JButton("按钮1");//创建按钮的对象
        btn2=new JButton("按钮2");
        btn3=new JButton("按钮3");
        btn4=new JButton("按钮4");
        btn5=new JButton("按钮5");
        if(layoutstyle=="f" || layoutstyle=="g") {//定义布局方法 
            m.add(btn1);
            m.add(btn2);
            m.add(btn3);
            m.add(btn4);
            m.add(btn5);
        }
        if(layoutstyle=="b" || layoutstyle=="c") {
            m.add(btn1,"East");
            m.add(btn2,"South");
            m.add(btn3,"West");
            m.add(btn4,"North");
            m.add(BorderLayout.CENTER,btn5);
        }
        setSize(250,150);//设置界面宽度和高度
        setVisible(true);//设置界面的可见性
        setDefaultCloseOperation(EXIT_ON_CLOSE);//设置窗口关闭时的默认操作
    }



    public static void main(String[] args) {
        // TODO Auto-generated method stub
        new LayoutTest("f");//显示界面
        new LayoutTest("g");
        new LayoutTest("b");
        new LayoutTest("c");



    }
}

运行结果:
这里写图片描述

知识点:
1、布局管理容器
2、FlowLayout布局;BorderLayout布局;CardLayout布局;GridLayout布局

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值