Java Swing GridLayout

2018-01-09 19:23 更新

Java Swing教程 - Java Swing GridLayout


GridLayout在具有相同大小的單元格的網格中排列組件。每個組件放置在一個單元格中。

GridLayout不符合組件的首選大小。它將可用空間劃分為相同大小并將每個組件調整為單元格的大小。

當創(chuàng)建GridLayout時,我們指定行數(shù)或網格中的列數(shù)。

我們可以使用GridLayout類的以下三個構造函數(shù)之一創(chuàng)建GridLayout:

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

我們可以從構造函數(shù)中指定網格中的行數(shù),列數(shù),水平間隙和兩個單元格之間的垂直間隙。這些屬性也可以使用setRows(),setColumns(),setHgap()和setVgap()方法設置。分別。

no-args構造函數(shù)創(chuàng)建一行的網格。 列數(shù)與添加到容器的組件數(shù)相同。

以下代碼創(chuàng)建一行的網格布局。

GridLayout gridLayout  = new GridLayout();

以下代碼創(chuàng)建5行的網格布局。它使用0作為列數(shù)。 將計算列數(shù)。

GridLayout gridLayout  = new GridLayout(5, 0);

以下代碼創(chuàng)建了3列的網格布局。它使用0作為行數(shù)。將計算行數(shù)。

GridLayout gridLayout  = new GridLayout(0, 3);

以下代碼創(chuàng)建具有2行和3列的網格布局。

GridLayout gridLayout  = new GridLayout(2, 3);

以下代碼創(chuàng)建一個具有三行的GridLayout水平間隙為10像素,單元之間的垂直間隙為20像素。

GridLayout gridLayout  = new GridLayout(3, 0,  10,   20);
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
/*ww  w  . j a v  a2 s  .co m*/
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Main {
  public static void main(String[] args) {
    JFrame frame = new JFrame("GridLayout");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container contentPane = frame.getContentPane();

    JPanel buttonPanel = new JPanel();
    buttonPanel.setLayout(new GridLayout(3, 0));

    for (int i = 1; i <= 9; i++) {
      buttonPanel.add(new JButton("Button  " + i));
    }

    contentPane.add(buttonPanel, BorderLayout.CENTER);
    frame.pack();
    frame.setVisible(true);
  }
}


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號