欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Swing BoxLayout箱式布局的實(shí)現(xiàn)代碼

 更新時(shí)間:2019年12月05日 09:34:12   作者:xietansheng  
這篇文章主要介紹了Java Swing BoxLayout箱式布局的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1. 概述

官方JavaDocsApi: javax.swing.BoxLayoutjavax.swing.Box

BoxLayout,箱式布局管理器。它把若干組件按水平或垂直方向依次排列放置。Swing 提供了一個(gè)實(shí)現(xiàn)了 BoxLayout 的容器組件Box。使用 Box 提供的靜態(tài)方法,可快速創(chuàng)建水平/垂直箱容器(Box),以及填充組件之間空隙的不可見(jiàn)組件。用水平箱和垂直箱的組合嵌套可實(shí)現(xiàn)類似于 GridBagLayout 的效果,但沒(méi)那么復(fù)雜。

創(chuàng)建水平/垂直箱容器(Box):

// 創(chuàng)建一個(gè)水平箱容器
Box hBox = Box.createHorizontalBox();
  
// 創(chuàng)建一個(gè)垂直箱容器
Box vBox = Box.createVerticalBox();

Box 內(nèi)的組件之間默認(rèn)沒(méi)有空隙并居中,如果想在組件之間(或頭部/尾部)添加空隙,可以在其中添加一個(gè)影響布局的不可見(jiàn)組件。Box 提供了三種用于填充空隙的不可見(jiàn)組件:glue、struts 和 rigidAreas。

創(chuàng)建 膠狀(寬/高可伸縮)的不可見(jiàn)組件(glue):

// 創(chuàng)建一個(gè) 水平方向膠狀 的不可見(jiàn)組件,用于撐滿水平方向剩余的空間(如果有多個(gè)該組件,則平分剩余空間)
Component hGlue = Box.createHorizontalGlue();

// 創(chuàng)建一個(gè) 垂直方向膠狀 的不可見(jiàn)組件,用于撐滿垂直方向剩余的空間(如果有多個(gè)該組件,則平分剩余空間)
Component vGlue = Box.createVerticalGlue();

// 創(chuàng)建一個(gè) 水平和垂直方向膠狀 的不可見(jiàn)組件,用于撐滿水平和垂直方向剩余的空間(如果有多個(gè)該組件,則平分剩余空間)
Component glue = Box.createGlue();

創(chuàng)建 固定寬度或高度 的不可見(jiàn)組件(struts):

// 創(chuàng)建一個(gè) 固定寬度 的不可見(jiàn)組件(用于水平箱)
Component hStrut = Box.createHorizontalStrut(int width);

// 創(chuàng)建一個(gè) 固定高度 的不可見(jiàn)組件(用于垂直箱)
Component vStrut = Box.createVerticalStrut(int height);

創(chuàng)建 固定寬高 的不可見(jiàn)組件(rigidAreas):

// 創(chuàng)建 固定寬高 的不可見(jiàn)組件
Component rigidArea = Box.createRigidArea(new Dimension(int width, int height));

2. 代碼實(shí)例

package com.xiets.swing;

import javax.swing.*;

public class Main {

  public static void main(String[] args) {
    JFrame jf = new JFrame("測(cè)試窗口");
    jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    JButton btn01 = new JButton("Button01");
    JButton btn02 = new JButton("Button02");
    JButton btn03 = new JButton("Button03");
    JButton btn04 = new JButton("Button04");
    JButton btn05 = new JButton("Button05");

    // 創(chuàng)建第一個(gè)水平箱容器
    Box hBox01 = Box.createHorizontalBox();
    hBox01.add(btn01);
    hBox01.add(btn02);
    hBox01.add(btn03);

    // 創(chuàng)建第二水平箱容器
    Box hBox02 = Box.createHorizontalBox();
    hBox02.add(btn04);
    hBox02.add(Box.createHorizontalGlue()); // 添加一個(gè)水平方向膠狀的不可見(jiàn)組件,撐滿剩余水平空間
    hBox02.add(btn05);

    // 創(chuàng)建一個(gè)垂直箱容器,放置上面兩個(gè)水平箱(Box組合嵌套)
    Box vBox = Box.createVerticalBox();
    vBox.add(hBox01);
    vBox.add(hBox02);

    // 把垂直箱容器作為內(nèi)容面板設(shè)置到窗口
    jf.setContentPane(vBox);

    jf.pack();
    jf.setLocationRelativeTo(null);
    jf.setVisible(true);
  }

}

結(jié)果展示:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解poi+springmvc+springjdbc導(dǎo)入導(dǎo)出excel實(shí)例

    詳解poi+springmvc+springjdbc導(dǎo)入導(dǎo)出excel實(shí)例

    本篇文章主要介紹了poi+springmvc+springjdbc導(dǎo)入導(dǎo)出excel實(shí)例,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2017-01-01
  • Java中4種校驗(yàn)注解詳解(值校驗(yàn)、范圍校驗(yàn)、長(zhǎng)度校驗(yàn)、格式校驗(yàn))

    Java中4種校驗(yàn)注解詳解(值校驗(yàn)、范圍校驗(yàn)、長(zhǎng)度校驗(yàn)、格式校驗(yàn))

    這篇文章主要給大家介紹了關(guān)于Java中4種校驗(yàn)注解詳解的相關(guān)資料,分別包括值校驗(yàn)、范圍校驗(yàn)、長(zhǎng)度校驗(yàn)、格式校驗(yàn)等,Java注解(Annotation)是一種元數(shù)據(jù),它可以被添加到Java代碼中,并可以提供額外的信息和指令,需要的朋友可以參考下
    2023-08-08
  • Spring+Mybatis+Mysql搭建分布式數(shù)據(jù)庫(kù)訪問(wèn)框架的方法

    Spring+Mybatis+Mysql搭建分布式數(shù)據(jù)庫(kù)訪問(wèn)框架的方法

    這篇文章主要介紹了Spring+Mybatis+Mysql搭建分布式數(shù)據(jù)庫(kù)訪問(wèn)框架的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-03-03
  • java后臺(tái)防止表單重復(fù)提交方法詳解

    java后臺(tái)防止表單重復(fù)提交方法詳解

    這篇文章主要介紹了后臺(tái)防止表單重復(fù)提交,利用Session防止表單重復(fù)提交,判斷請(qǐng)求url和數(shù)據(jù)是否和上一次相同,利用Spring AOP和redis的鎖需要的朋友可以參考下
    2022-12-12
  • Spring aop失效的幾種解決方案

    Spring aop失效的幾種解決方案

    這篇文章主要介紹了Spring aop失效的幾種解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Java防止文件被篡改之文件校驗(yàn)功能的實(shí)例代碼

    Java防止文件被篡改之文件校驗(yàn)功能的實(shí)例代碼

    這篇文章主要介紹了Java防止文件被篡改之文件校驗(yàn)功能,本文給大家分享了文件校驗(yàn)和原理及具體實(shí)現(xiàn)思路,需要的朋友可以參考下
    2018-11-11
  • 基于Java編寫(xiě)簡(jiǎn)易的算式測(cè)試程序

    基于Java編寫(xiě)簡(jiǎn)易的算式測(cè)試程序

    本文將利用Java語(yǔ)言編寫(xiě)一個(gè)簡(jiǎn)易的算式測(cè)試程序,這個(gè)程序可以自動(dòng)生成指定數(shù)量的加減乘三則運(yùn)算題目,感興趣的小伙伴可以了解一下
    2022-05-05
  • Java由淺入深通關(guān)抽象類與接口下

    Java由淺入深通關(guān)抽象類與接口下

    在類中沒(méi)有包含足夠的信息來(lái)描繪一個(gè)具體的對(duì)象,這樣的類稱為抽象類,接口是Java中最重要的概念之一,它可以被理解為一種特殊的類,不同的是接口的成員沒(méi)有執(zhí)行體,是由全局常量和公共的抽象方法所組成,本文給大家介紹Java抽象類和接口,感興趣的朋友一起看看吧
    2022-04-04
  • 一篇超詳細(xì)的Spring Boot整合Mybatis文章

    一篇超詳細(xì)的Spring Boot整合Mybatis文章

    大家都知道springboot搭建一個(gè)spring框架只需要秒秒鐘。下面通過(guò)實(shí)例代碼給大家介紹一下springboot與mybatis的完美融合,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2021-07-07
  • 一文搞懂Java?JDBC中的SQL注入問(wèn)題

    一文搞懂Java?JDBC中的SQL注入問(wèn)題

    在用戶輸入的數(shù)據(jù)中有SQL關(guān)鍵字或語(yǔ)法,并且關(guān)鍵字或語(yǔ)法參與了SQL語(yǔ)句的編譯,導(dǎo)致SQL語(yǔ)句編譯后的條件為true,一直得到正確的結(jié)果,這種現(xiàn)象就是SQL注入,這篇文章主要介紹了一文搞懂Java?JDBC中的SQL注入問(wèn)題,需要的朋友可以參考下
    2022-10-10

最新評(píng)論