Java连载123-网格布局包管理

一、网格包布局举例

1.这里构造一个3*3的布局。

package com.bjpowernode.java_learning;

​

import java.awt.Frame;

import java.awt.*;

​

public class D123_1_GridLayout {

  public static void main(String[] args) {

    Frame f = new Frame("GridLayout");      //创建一个名为GridLayout的窗体

    f.setLayout(new GridLayout(3,3));       //设置该窗体位3*3的网格

    f.setSize(300,300);                     //设置窗体大小

    f.setLocation(400,300);

    //下面的代码是循环添加9个按钮到GridLayout中

    for(int i=1;i<=9;i++) {

      Button btn = new Button("btn" + i);

      f.add(btn);     //向窗体中添加按钮

     

    }

    f.setVisible(true);

   

  }

​

}

二、网格包布局管理器

GridBagLayout(网格包布局管理器)是最灵活、最复杂的布局管理器。它与GridLayout布局管理器类似,它允许网格中的组件大小各不相同,而且允许一个组件跨越一个或者多个网格。

1.使用GridBagLayout布局管理器的步骤如下:

(1)创建GridbagLayout布局管理器,并使容器采用该布局管理器

GridbagLayout layout = new GridBagLayout();

container.setLayout(layout);

(2)创建GridBagConstrains对象(布局约束条件),并设置该对象的相关属性,例如:

GridBagConstains constrains = new GridBagConstraints();

constraints.gridx = 1;              //设置网格的左上角横向索引

constraints.gridy = 1;              //设置网格的左上角纵向索引

constraints.gridheight = 1;         //设置组件横向跨越的组件

constraints.gridwidth = 1;          //设置组件纵向跨越的组件

(3)调用GridBagLayout对象的setConstraints()方法建立GidBagConstrains对象和受控组件之间的关联。

layout.setConstraints(component,constraints);

(4)向容器中添加组件

container.add(component);

GridBagConstrains对象是可以重复使用的,只需要改变它的属性即可。如果要向容器中添加多个组件,则重复(2),(3),(4)步骤。

三、源码

D123_1_GridLayout.java

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

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

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

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

原文地址:https://www.cnblogs.com/ruigege0000/p/13160956.html