JavaSwing GridLayout 网格布局的实现代码
1. 概述
官方JavaDocsApi: java.awt.GridLayout
GridLayout,网格布局管理器。它以矩形网格形式对容器的组件进行布置,把容器按行列分成大小相等的矩形网格,一个网格中放置一个组件,组件宽高自动撑满网格。
以行数和总数优先: 通过构造方法或 setRows 和 setColumns 方法将行数和列数都设置为非零值时,指定的列数将被忽略。列数通过指定的行数和布局中的组件总数来确定。因此,例如,如果指定了三行和两列,在布局中添加了九个组件,则它们将显示为三行三列。仅当将行数设置为零时,指定列数才对布局有效。
GridLayout构造方法:
// 默认构造, 每个组件占据一行一列 GridLayout() // 指定 行数 和 列数 的网格布局 GridLayout(int rows, int cols) // 指定 行数 和 列数 的网格布局, 并指定 水平 和 竖直 网格间隙 GridLayout(int rows, int cols, int hgap, int vgap)
2. 代码演示
package com.xiets.swing; import javax.swing.*; import java.awt.*; public class Main { public static void main(String[] args) { JFrame jf = new JFrame("测试窗口"); jf.setSize(200, 250); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); jf.setLocationRelativeTo(null); // 创建 3 行 3 列 的网格布局 GridLayout layout = new GridLayout(3, 3); // 设置 水平 和 竖直 间隙 // layout.setHgap(10); // layout.setVgap(10); JPanel panel = new JPanel(layout); JButton btn01 = new JButton("按钮01"); JButton btn02 = new JButton("按钮02"); JButton btn03 = new JButton("按钮03"); JButton btn04 = new JButton("按钮04"); JButton btn05 = new JButton("按钮05"); JButton btn06 = new JButton("按钮06"); JButton btn07 = new JButton("按钮07"); JButton btn08 = new JButton("按钮08"); panel.add(btn01); panel.add(btn02); panel.add(btn03); panel.add(btn04); panel.add(btn05); panel.add(btn06); panel.add(btn07); panel.add(btn08); jf.setContentPane(panel); jf.setVisible(true); } }
结果展示:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- java GUI编程之布局控制器(Layout)实例分析
- Java Swing SpringLayout弹性布局的实现代码
- JavaSwing BorderLayout 边界布局的实现代码
- Java Swing CardLayout卡片布局的实现示例
- Java Swing GroupLayout分组布局的实现代码
- Java Swing BoxLayout箱式布局的实现代码
- Java Swing GridBagLayout网格袋布局的实现
- JavaSwing FlowLayout 流式布局的实现
- java布局管理之CardLayout简单实例
- Java Swing组件BoxLayout布局用法示例
- Java Swing组件布局管理器之FlowLayout(流式布局)入门教程
- java Swing布局管理之BoxLayout布局
- Java 最重要布局管理器GridBagLayout的使用方法
- JavaSwing基础之Layout布局相关知识详解
相关文章
Mybatis-plus使用注解 @TableField(exist = false)
这篇文章主要介绍了Mybatis-plus使用注解 @TableField(exist = false),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-03-03详解使用JRebel插件实现SpringBoot应用代码热加载
这篇文章主要介绍了详解使用JRebel插件实现SpringBoot应用代码热加载,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-10-10Spring Boot Hazelcast Caching 使用和配置详解
这篇文章主要介绍了Spring Boot Hazelcast Caching 使用和配置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-09-09
最新评论