最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVA swing布局管理器實(shí)例解析

 更新時(shí)間:2020年03月06日 13:39:00   作者:白客C  
這篇文章主要介紹了JAVA swing布局管理器實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

組件在容器(比如Jframe)中的位置和大小是由布局管理器來(lái)決定的。所有的容器都會(huì)使用一個(gè)布局管理器,通過(guò)它來(lái)自動(dòng)進(jìn)行組件的布局管理。

種類

java共提供了五種布局管理器,只介紹三種是最常見(jiàn)的布局管理器。

邊界布局BorderLayout

邊界布局將容器簡(jiǎn)單的劃分為東南西北中5個(gè)區(qū)域,中間區(qū)域最大。JFrame、JDialog默認(rèn)布局就是BorderLayout。

/*
 * 作者:白客C
 * 時(shí)間:2020年03月05日
 * 內(nèi)容:gui窗體
 * 步驟:
 * 1.繼承JFrame
 * 2.定義你需要的組件
 * 3.創(chuàng)建組件
 * 4.添加組件
 * 5.對(duì)窗體設(shè)置
 */

package com.beekc.www;
import java.awt.*;
import javax.swing.*;

//繼承JFrame
public class Beekc extends JFrame{
  //定義需要的組件
  JButton jb1,jb2,jb3,jb4,jb5;

  public static void main(String[] args){
    Beekc beekc = new Beekc();
  }

  //構(gòu)造函數(shù)
  public Beekc(){
    //創(chuàng)建組件
    jb1 = new JButton("中部");
    jb2 = new JButton("北部");
    jb3 = new JButton("東部");
    jb4 = new JButton("南部");
    jb5 = new JButton("西部");

    //添加各個(gè)組件
    this.add(jb1,BorderLayout.CENTER);
    this.add(jb2,BorderLayout.NORTH);
    this.add(jb3,BorderLayout.EAST);
    this.add(jb4,BorderLayout.SOUTH);
    this.add(jb5,BorderLayout.WEST);

    //設(shè)置窗體屬性
    //設(shè)置窗口標(biāo)題
    this.setTitle("邊界布局案例");
    //設(shè)置窗口大小
    this.setSize(300,200);
    //設(shè)置窗體打開(kāi)的初始位置
    this.setLocation(200,200);
    //一定要設(shè)置關(guān)閉窗口時(shí)一定要關(guān)閉程序
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    //顯示窗體
    this.setVisible(true);
  }

}

運(yùn)行結(jié)果

要是沒(méi)設(shè)置北部或南部,西部、中部、南部就會(huì)占取位置;

要是沒(méi)設(shè)置西部、東部,中部就會(huì)占取位置;

要是沒(méi)設(shè)置中部,中部是空的;

流式布局FlowLayout

FlowLayout布局,按照組件的添加次序?qū)窗粹o組件(當(dāng)然也可以是別的組件)從左到右放置在容器的邊界時(shí),組件將放置在下一行中,F(xiàn)lowLayout可以左對(duì)齊、劇中、右對(duì)齊的方式排列組件。

注意事項(xiàng)

 ?、?不限制他所管理的組件大小,允許他們有最佳大小

 ?、?當(dāng)容器被縮放時(shí),組件的位置可能變化,但組件的大小不變

  Ⅲ.默認(rèn)組件是居中對(duì)齊,可以通過(guò)FlowLayout(int align) 函數(shù)來(lái)指定對(duì)齊方式

/*
 * 作者:白客C
 * 時(shí)間:2020年03月05日
 * 內(nèi)容:gui窗體
 * 步驟:
 * 1.繼承JFrame容器
 * 2.定義你需要的組件
 * 3.創(chuàng)建組件
 * 4.添加組件
 * 5.對(duì)窗體設(shè)置
 * 6.顯示
 */

package com.beekc.www;
import java.awt.*;
import javax.swing.*;

//繼承JFrame
public class Beekc extends JFrame{

  //定義組件
  JButton jb1,jb2,jb3,jb4,jb5,jb6;

  public static void main(String[] args){
    Beekc beekc = new Beekc();
  }

  //構(gòu)造函數(shù)
  public Beekc(){
    //創(chuàng)建組件
    jb1 = new JButton("蘋(píng)果");
    jb2 = new JButton("香蕉");
    jb3 = new JButton("榴蓮");
    jb4 = new JButton("菠蘿");
    jb5 = new JButton("西瓜");
    jb6 = new JButton("梨子");

    //添加組件
    this.add(jb1);
    this.add(jb2);
    this.add(jb3);
    this.add(jb4);
    this.add(jb5);
    this.add(jb6);

    //設(shè)置布局管理器
    //FlowLayout.CENTER 居中對(duì)齊
    this.setLayout(new FlowLayout(FlowLayout.CENTER));

    //設(shè)置窗體
    this.setTitle("流式布局案例");
    this.setSize(300,110);
    //禁止用戶改變窗體大小
    this.setResizable(false);
    this.setLocation(200,200);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    //顯示窗體
    this.setVisible(true);
  }

}

運(yùn)行結(jié)果

網(wǎng)格布局GridLayout

GirdLayout布局就是將容器分割成多行多列,組件被填充到每個(gè)網(wǎng)格中,添加到容器的組件首先放置在左上角的網(wǎng)格中,然后從左到右放置其它的組件,當(dāng)占滿該行的所有網(wǎng)格后,接著繼續(xù)在下一行從左到右放置組件。

/*
 * 作者:白客C
 * 時(shí)間:2020年03月05日
 * 內(nèi)容:gui窗體
 * 步驟:
 * 1.繼承JFrame容器
 * 2.定義你需要的組件
 * 3.創(chuàng)建組件
 * 4.添加組件
 * 5.對(duì)窗體設(shè)置
 * 6.顯示
 */

package com.beekc.www;
import java.awt.*;
import javax.swing.*;

//繼承JFrame
public class Beekc extends JFrame{

  //定義組件
  int size = 9;
  JButton[] jb = new JButton[size];


  public static void main(String[] args){
    Beekc beekc = new Beekc();
  }

  //構(gòu)造函數(shù)
  public Beekc(){
    //創(chuàng)建組件
    for(int i = 0 ; i < size ; i++)
    {
      jb[i] = new JButton(String.valueOf(i+1));
    }

    //設(shè)置網(wǎng)格布局
    this.setLayout(new GridLayout(3,3,10,10));

    //添加組件
    for(int i = 0 ; i < size ; i++)
    {
      this.add(jb[i]);
    }
    //設(shè)置窗體
    this.setTitle("網(wǎng)格布局案例");
    this.setSize(300,300);
    this.setResizable(false);
    this.setLocation(200,200);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    //顯示
    this.setVisible(true);
  }

}

運(yùn)行結(jié)果

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

相關(guān)文章

  • SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法

    SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法

    這篇文章主要介紹了SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 利用Spring Cloud Config結(jié)合Bus實(shí)現(xiàn)分布式配置中心的步驟

    利用Spring Cloud Config結(jié)合Bus實(shí)現(xiàn)分布式配置中心的步驟

    這篇文章主要介紹了利用Spring Cloud Config結(jié)合Bus實(shí)現(xiàn)分布式配置中心的相關(guān)資料,文中通過(guò)示例代碼將實(shí)現(xiàn)的步驟一步步介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來(lái)一起看看吧
    2018-05-05
  • Java中的Vector和Stack底層源碼分析

    Java中的Vector和Stack底層源碼分析

    這篇文章主要介紹了Java中的Vector和Stack底層源碼分析,Stack繼承了Vector,Vector底層還是一個(gè)List,也就是基于數(shù)組來(lái)實(shí)現(xiàn)的,所以ArrayList有的優(yōu)點(diǎn),比如獲取元素的速度快,隨機(jī)讀,它都有,需要的朋友可以參考下
    2023-12-12
  • win10安裝rabbitMQ的詳細(xì)步驟

    win10安裝rabbitMQ的詳細(xì)步驟

    RabbitMQ是一個(gè)開(kāi)源的消息中間件(Message Broker),它基于AMQP協(xié)議設(shè)計(jì),用于在分布式系統(tǒng)中實(shí)現(xiàn)消息的高效、可靠傳輸,本文給打擊介紹了win10安裝rabbitMQ的詳細(xì)步驟,文中通過(guò)圖文講解的非常詳細(xì),需要的朋友可以參考下
    2024-06-06
  • 半小時(shí)通透Java的泛型

    半小時(shí)通透Java的泛型

    這篇文章主要給大家介紹了關(guān)于Java中泛型使用的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-09-09
  • Maven中resources標(biāo)簽的用法詳解

    Maven中resources標(biāo)簽的用法詳解

    本文主要介紹了Maven中resources標(biāo)簽的用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Java異常處理學(xué)習(xí)心得

    Java異常處理學(xué)習(xí)心得

    本篇文章給大家詳細(xì)講述了學(xué)習(xí)Java異常處理學(xué)習(xí)的心得以及原理介紹,對(duì)此有興趣的朋友參考下吧。
    2018-01-01
  • Java讀取resources中資源文件路徑以及jar中文件無(wú)法讀取的解決

    Java讀取resources中資源文件路徑以及jar中文件無(wú)法讀取的解決

    這篇文章主要介紹了Java讀取resources中資源文件路徑以及jar中文件無(wú)法讀取的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • SpringBoot集成Druid監(jiān)控頁(yè)面最小化配置操作

    SpringBoot集成Druid監(jiān)控頁(yè)面最小化配置操作

    這篇文章主要介紹了SpringBoot集成Druid監(jiān)控頁(yè)面最小化配置操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Spring與MyBatis集成?AOP整合PageHelper插件的操作過(guò)程

    Spring與MyBatis集成?AOP整合PageHelper插件的操作過(guò)程

    Spring與MyBatis集成的主要目的是為了提供更強(qiáng)大的數(shù)據(jù)訪問(wèn)和事務(wù)管理能力,以及簡(jiǎn)化配置和提高開(kāi)發(fā)效率,這篇文章主要介紹了Spring與MyBatis集成AOP整合PageHelper插件,需要的朋友可以參考下
    2023-08-08

最新評(píng)論

合肥市| 无为县| 龙江县| 罗平县| 麦盖提县| 泰兴市| 盈江县| 泰安市| 东乌| 永川市| 文水县| 商河县| 怀化市| 开封市| 安新县| 维西| 阿图什市| 清徐县| 泰州市| 嘉兴市| 莲花县| 泸西县| 克什克腾旗| 枣强县| 苍梧县| 赤水市| 山阴县| 龙口市| 综艺| 通辽市| 上思县| 全南县| 洛阳市| 广宁县| 大足县| 克拉玛依市| 全南县| 阿拉善盟| 许昌县| 峨山| 临武县|