• Java连载122-布局管理器、边界布局管理器


    一、编写窗体

    1.左右边距、按钮

    package com.bjpowernode.java_learning;
    
    ​
    
    import java.awt.Button;
    
    import java.awt.FlowLayout;
    
    import java.awt.Frame;
    
    ​
    
    public class D122_1_Test {
    
      public static void main(String[] args) {
    
        final Frame f = new Frame("Flowlayout");//创建一个名为Flowlayout的窗体
    
        //设置窗体中的布局管理器为Flowlayout,所有组件左对齐,水平间距为20,垂直间距为30
    
        f.setLayout(new FlowLayout(FlowLayout.LEFT,20,30));
    
        f.setSize(220,300);              //设置窗体大小
    
        f.setLocation(300,200);          //设置窗体显示位置
    
        f.add(new Button("第一个按钮"));    //把“第一个按钮”添加到f窗体
    
        f.add(new Button("第二个按钮"));
    
        f.add(new Button("第三个按钮"));
    
        f.add(new Button("第四个按钮"));
    
        f.add(new Button("第五个按钮"));
    
        f.add(new Button("第六个按钮"));
    
        f.setVisible(true);
    
       
    
      }
    
    }

    二、边界布局管理器

    BorderLayout(边界布局管理器)是一种较为复杂的布局方式,也就是说,在改变容器时,NORTH和SOUTH区域高度不变, 长度调整,WEST和EAST区域宽度不足,CENTER会相应调整。当向BorderLayout的容器添加组件的时候,需要使用add(Component comp,Object constains)方法,其中comp表示要添加到布局中的组件,constrains是指定将组件添加到布局中的方式和位置的对象,他是一个Object类型,在传参的时候可以使用BorderLayout类提供的5个常量,它们分别是EASTSOUTHWESTNORTH和CENTER。

     
    
    package com.bjpowernode.java_learning;
    
    ​
    
    import java.awt.Frame;
    
    import java.awt.FlowLayout;
    
    import java.awt.Button;
    
    import java.awt.BorderLayout;
    
    ​
    
    ​
    
    public class D122_2_BordLayout {
    
      public static void main(String[] args) {
    
        final Frame f = new Frame("BorderLayout");    //创建一个名为BorderLayout的窗体
    
        f.setLayout(new BorderLayout());              //设置窗体中的布局管理器为BorderLayout
    
        f.setSize(300,300);                           //设置窗体大小
    
        f.setLocation(300,200);                       //设置窗体显示的位置
    
        f.setVisible(true);                           //设置窗体可见
    
        //下面的代码是创建5个按钮,分别用于填充BorderLayout的五个区域
    
        Button but1 = new Button("东部");
    
        Button but2 = new Button("西部");
    
        Button but3 = new Button("南部");
    
        Button but4 = new Button("北部");
    
        Button but5 = new Button("中部");
    
        //下面的代码是将创建的按钮添加到窗体中,并设置按钮所在区域
    
        f.add(but1,BorderLayout.EAST);
    
        f.add(but2,BorderLayout.WEST);
    
        f.add(but3,BorderLayout.SOUTH);
    
        f.add(but4,BorderLayout.NORTH);
    
        f.add(but5,BorderLayout.CENTER);
    
      }
    
    ​
    
    }

    三、网格布局管理器

    GridLayout(网格布局管理器)使用纵横线将容器分为n行m列大小相等的网格,每个网格放置一个组件,添加到容器中的组件首先放置到第一行第一列的位置,然后在第一行网格中从左至右依次放置其他组件,与FlowLayout不同的是,放置在GridLayout布局管理器中的组件将自动占据网格的整个区域​。

    GridLayout的构造方法

    GridLayout( )      默认只有一行,每个组件占一行

    GridLayout(int rows,int cols)           指定容器的行数和列数

    GridLayout(int rows ,int cols,int hgap, int vgap)         指定容器的行数和列数以及组件之间的水平距离​,垂直距离。 ​

    四、源码:

    D122_1_Test.java

    D122_2_BordLayout.java

    https://github.com/ruigege66/Java/blob/master/D122_1_Test.java

    https://github.com/ruigege66/Java/blob/master/D122_2_BordLayout.java

    2.CSDN:https://blog.csdn.net/weixin_44630050

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

     

  • 相关阅读:
    sed附加命令
    01_Mac下安装homebrew
    02_linux常用指令
    18_Condition条件
    01.IDEA常用快捷键
    17_重入锁ReentrantLock
    秒杀系统架构分析与实战--转载
    16_Queue_利用wait()和notify()编写一个阻塞队列
    15_volatile
    14_synchronized深入
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/13128644.html
Copyright © 2020-2023  润新知