成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

Java窗口(JFrame)從零開(kāi)始(4)——流布局+邊界布局+網(wǎng)格布局

liangzai_cool / 1746人閱讀

摘要:代碼演示設(shè)置容器為邊界布局管理器循環(huán)添加按鈕,并設(shè)置按鈕布局網(wǎng)格布局類(lèi)是一個(gè)布局處理器,它以矩形網(wǎng)格形式對(duì)容器的組件進(jìn)行布置。構(gòu)造方法摘要?jiǎng)?chuàng)建具有默認(rèn)值的網(wǎng)格布局,即每個(gè)組件占據(jù)一行一列。創(chuàng)建具有指定行數(shù)和列數(shù)的網(wǎng)格布局。

流布局:
FlowLayout構(gòu)造方法:
FlowLayout()

      構(gòu)造一個(gè)新的 FlowLayout,它是居中對(duì)齊的,默認(rèn)的水平和垂直間隙是 5 個(gè)單位。 

FlowLayout(int align)

      構(gòu)造一個(gè)新的 FlowLayout,它具有指定的對(duì)齊方式,默認(rèn)的水平和垂直間隙是 5 個(gè)單位。 

FlowLayout(int align, int hgap, int vgap)

      創(chuàng)建一個(gè)新的流布局管理器,它具有指定的對(duì)齊方式以及指定的水平和垂直間隙。 

注意:

      align=0:表示每一行組件將按照左對(duì)齊排列
      align=1:表示每一行組件將按照居中對(duì)齊排列
      align=2:表示每一行組件將按照右對(duì)齊排列

代碼:

package jframe;
import java.awt.Button;
import java.awt.Container;
import java.awt.FlowLayout;

import javax.swing.*;

public class jframe extends JFrame{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    public jframe(){
        new JFrame("title");
        Container con = getContentPane();
        setLayout(new FlowLayout(0,10,10));            //按照左對(duì)齊排列垂直水平間隔為10
        for (int i=0;i<10;i++){
            add(new JButton("Button"+i));              //添加組件
        }
        this.setVisible(true);                         //設(shè)置窗體可見(jiàn)
        this.setSize(300, 300);                        //設(shè)置窗體大小
    }
    public static void main(String[] args) {
        jframe a = new jframe();
    }
}    

如果改變窗體的大小其中組件的位置也會(huì)跟著改變

邊界布局:
這是一個(gè)布置容器的邊框布局,它可以對(duì)容器組件進(jìn)行安排,并調(diào)整其大小,使其符合下列五個(gè)區(qū)域:北、南、東、西、中。每個(gè)區(qū)域最多只能包含一個(gè)組件,并通過(guò)相應(yīng)的常量進(jìn)行標(biāo)識(shí):NORTH、SOUTH、EAST、WEST、CENTER。當(dāng)使用邊框布局將一個(gè)組件添加到容器中時(shí),要使用這五個(gè)常量之一。

代碼演示:

package jframe;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Container;
import java.awt.FlowLayout;

import javax.swing.*;

public class jframe extends JFrame{
    
    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    String border [] = {BorderLayout.NORTH,BorderLayout.SOUTH,BorderLayout.WEST,
            BorderLayout.EAST,BorderLayout.CENTER};
    
    String borderName [] = {"North","South","West","East","Center"};
    
    public jframe(){
        this.setTitle("test");
        Container con = this.getContentPane();
        this.setLayout(new BorderLayout());                        //設(shè)置容器為邊界布局管理器
        for (int i=0;i<5;i++){
            con.add(border[i],new JButton(borderName[i]));        ///循環(huán)添加按鈕,并設(shè)置按鈕布局
        }
        this.setVisible(true);
        this.setBounds(50, 50, 500, 300);
    }
    public static void main(String[] args) {
        new jframe();
    }
}

網(wǎng)格布局
GridLayout 類(lèi)是一個(gè)布局處理器,它以矩形網(wǎng)格形式對(duì)容器的組件進(jìn)行布置。容器被分成大小相等的矩形,一個(gè)矩形中放置一個(gè)組件。

構(gòu)造方法摘要
GridLayout()

      創(chuàng)建具有默認(rèn)值的網(wǎng)格布局,即每個(gè)組件占據(jù)一行一列。 

GridLayout(int rows, int cols)

      創(chuàng)建具有指定行數(shù)和列數(shù)的網(wǎng)格布局。 

GridLayout(int rows, int cols, int hgap, int vgap)

      創(chuàng)建具有指定行數(shù)和列數(shù)的網(wǎng)格布局(hgap指定網(wǎng)格之間的水平間距,vgap指定網(wǎng)格之間垂直間距)。 

代碼演示:

package jframe;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.*;

public class jframe extends JFrame{
    
    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    public jframe(){
        this.setTitle("test");
        Container con = this.getContentPane();
        this.setLayout(new GridLayout(7,3,5,5));        //設(shè)置7行3列垂直水平間隔為5
        for (int i=0;i<20;i++){
            con.add(new JButton("Button"+i));            //20個(gè)按鈕
        }
        this.setVisible(true);
        this.setBounds(50, 50, 300, 500);
    }
    public static void main(String[] args) {
        new jframe();
    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69989.html

相關(guān)文章

  • Swing布管理器

    摘要:布局管理器也是通過(guò)構(gòu)造器來(lái)創(chuàng)建的。流布局管理器的對(duì)齊方式如下所示。方法和方法分別獲取和設(shè)置流布局管理器中控件和控件之間的水平間距。 流布局(FlowLayout)默認(rèn)的JApplet,JPanel,JScrollPane 流布局是相對(duì)比較簡(jiǎn)單的一種布局管理器,也是最常用的布局管理器。在流布局中放置控件時(shí),將按照控件的添加順序,依次將控件從左到右進(jìn)行擺放,并且在一行的最后會(huì)進(jìn)行自動(dòng)換...

    王笑朝 評(píng)論0 收藏0
  • 初學(xué) Swing 組件

    摘要:包括了圖形用戶界面器件如文本框,按鈕,分隔窗格和表。按照指定布局限制添加組件。移除指定位置的組件。通常文本框用于接收用戶信息或其他文本信息的輸入。因此,組件也稱(chēng)為密碼文本框。創(chuàng)建一個(gè)具有出事文本信息以及制定列數(shù)的文本框。 Swing 是一個(gè)為Java設(shè)計(jì)的GUI工具包。 Swing是JAVA基礎(chǔ)類(lèi)的一部分。 Swing包括了圖形用戶界面(GUI)器件如:文本框,按鈕,分隔窗格和表。 S...

    codeGoogle 評(píng)論0 收藏0
  • Java窗口JFrame從零開(kāi)始(3)——絕對(duì)布

    摘要:中的絕對(duì)布局取消布局管理器實(shí)例化一個(gè)按鈕實(shí)例化一個(gè)按鈕設(shè)置位置與大小設(shè)置位置與大小顯示窗體 Swing中的絕對(duì)布局 package jframe;import java.awt.Button;import java.awt.Container;import javax.swing.*; public class jframe extends JFrame{ /** * */ pr...

    cangck_X 評(píng)論0 收藏0
  • 前端入門(mén)4-CSS屬性樣式表

    摘要:正文屬性樣式表正文屬性樣式表了解了具體的各種工作原理使用方式選擇器規(guī)則層疊算法等之后,那么該來(lái)學(xué)習(xí)的也就是都支持哪些屬性樣式表了。 本篇文章已授權(quán)微信公眾號(hào) dasu_Android(大蘇)獨(dú)家發(fā)布 聲明 本系列文章內(nèi)容全部梳理自以下四個(gè)來(lái)源: 《HTML5權(quán)威指南》 《JavaScript權(quán)威指南》 MDN web docs Github:smyhvae/web 作為一個(gè)前端小白,入...

    hss01248 評(píng)論0 收藏0
  • 容易忽略的七個(gè)CSS知識(shí)點(diǎn)

    摘要:樣式聲明通過(guò)一個(gè)稱(chēng)為級(jí)聯(lián)的過(guò)程來(lái)解釋和決定。級(jí)聯(lián)級(jí)聯(lián)可能是中最容易被弄錯(cuò)的屬性之一。因此很容易認(rèn)為元素的視覺(jué)邊界等于其寬度,但情況并非如此。 如果你在日常工作中使用CSS,那么你的主要目標(biāo)很可能集中在使事情看起來(lái)是正確的。最終得到的正確結(jié)果遠(yuǎn)比如何實(shí)現(xiàn)更重要。這意味著相比正確的語(yǔ)法和視覺(jué)效果我們更少關(guān)注CSS的實(shí)現(xiàn)原理。 你可能還沒(méi)有意識(shí)到,但CSS的視覺(jué)效果通常是操縱隱藏屬性的間接結(jié)...

    chanthuang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<