JavaSwing GridLayout 網(wǎng)格布局的實(shí)現(xiàn)代碼
1. 概述
官方JavaDocsApi: java.awt.GridLayout
GridLayout,網(wǎng)格布局管理器。它以矩形網(wǎng)格形式對(duì)容器的組件進(jìn)行布置,把容器按行列分成大小相等的矩形網(wǎng)格,一個(gè)網(wǎng)格中放置一個(gè)組件,組件寬高自動(dòng)撐滿網(wǎng)格。
以行數(shù)和總數(shù)優(yōu)先: 通過(guò)構(gòu)造方法或 setRows 和 setColumns 方法將行數(shù)和列數(shù)都設(shè)置為非零值時(shí),指定的列數(shù)將被忽略。列數(shù)通過(guò)指定的行數(shù)和布局中的組件總數(shù)來(lái)確定。因此,例如,如果指定了三行和兩列,在布局中添加了九個(gè)組件,則它們將顯示為三行三列。僅當(dāng)將行數(shù)設(shè)置為零時(shí),指定列數(shù)才對(duì)布局有效。
GridLayout構(gòu)造方法:
// 默認(rèn)構(gòu)造, 每個(gè)組件占據(jù)一行一列 GridLayout() // 指定 行數(shù) 和 列數(shù) 的網(wǎng)格布局 GridLayout(int rows, int cols) // 指定 行數(shù) 和 列數(shù) 的網(wǎng)格布局, 并指定 水平 和 豎直 網(wǎng)格間隙 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("測(cè)試窗口");
jf.setSize(200, 250);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
jf.setLocationRelativeTo(null);
// 創(chuàng)建 3 行 3 列 的網(wǎng)格布局
GridLayout layout = new GridLayout(3, 3);
// 設(shè)置 水平 和 豎直 間隙
// 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);
}
}
結(jié)果展示:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- java GUI編程之布局控制器(Layout)實(shí)例分析
- Java Swing SpringLayout彈性布局的實(shí)現(xiàn)代碼
- JavaSwing BorderLayout 邊界布局的實(shí)現(xiàn)代碼
- Java Swing CardLayout卡片布局的實(shí)現(xiàn)示例
- Java Swing GroupLayout分組布局的實(shí)現(xiàn)代碼
- Java Swing BoxLayout箱式布局的實(shí)現(xiàn)代碼
- Java Swing GridBagLayout網(wǎng)格袋布局的實(shí)現(xiàn)
- JavaSwing FlowLayout 流式布局的實(shí)現(xiàn)
- java布局管理之CardLayout簡(jiǎn)單實(shí)例
- Java Swing組件BoxLayout布局用法示例
- Java Swing組件布局管理器之FlowLayout(流式布局)入門教程
- java Swing布局管理之BoxLayout布局
- Java 最重要布局管理器GridBagLayout的使用方法
- JavaSwing基礎(chǔ)之Layout布局相關(guān)知識(shí)詳解
相關(guān)文章
Mybatis-plus使用注解 @TableField(exist = false)
這篇文章主要介紹了Mybatis-plus使用注解 @TableField(exist = false),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Java封裝數(shù)組之改進(jìn)為泛型數(shù)組操作詳解
這篇文章主要介紹了Java封裝數(shù)組之改進(jìn)為泛型數(shù)組操作,結(jié)合實(shí)例形式詳細(xì)分析了Java封裝數(shù)組為泛型數(shù)組相關(guān)原理、操作技巧與注意事項(xiàng),需要的朋友可以參考下2020-03-03
詳解使用JRebel插件實(shí)現(xiàn)SpringBoot應(yīng)用代碼熱加載
這篇文章主要介紹了詳解使用JRebel插件實(shí)現(xiàn)SpringBoot應(yīng)用代碼熱加載,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
IDEA通過(guò)git回滾到某個(gè)提交節(jié)點(diǎn)或某個(gè)版本的操作方法
這篇文章主要介紹了IDEA通過(guò)git回滾到某個(gè)提交節(jié)點(diǎn)或某個(gè)版本的方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
Spring Boot Hazelcast Caching 使用和配置詳解
這篇文章主要介紹了Spring Boot Hazelcast Caching 使用和配置詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09
java線程并發(fā)cyclicbarrier類使用示例
CyclicBarrier類似于CountDownLatch也是個(gè)計(jì)數(shù)器,不同的是CyclicBarrier數(shù)的是調(diào)用了CyclicBarrier.await()進(jìn)入等待的線程數(shù),當(dāng)線程數(shù)達(dá)到了CyclicBarrier初始時(shí)規(guī)定的數(shù)目時(shí),所有進(jìn)入等待狀態(tài)的線程被喚醒并繼續(xù),下面使用示例學(xué)習(xí)他的使用方法2014-01-01
Java超詳細(xì)教你寫一個(gè)斗地主洗牌發(fā)牌系統(tǒng)
這篇文章主要介紹了怎么用Java來(lái)你寫一個(gè)斗地主種洗牌和發(fā)牌的功能,斗地主相信大家都知道,同時(shí)也知道每一局都要洗牌打亂順序再發(fā)牌,本篇我們就來(lái)實(shí)現(xiàn)這個(gè)功能,感興趣的朋友跟隨文章往下看看吧2022-03-03

