Java API 分類導覽 - java.awt.GridBagConstraints

GridBagConstraints 類別 (class) 為 GridBagLayout 的常數設定類別,這是說將 Frame 設定為 GridBagLayout 後,需要另外替每個要加入 Frame 的元件建立 GridBagConstraints 物件設定相關常數,在 Frame 呼叫 add() 之時同時提供 GridBagConstraints 物件當參數。



修飾子
public class GridBagConstraints


父類別
java.lang.Object


實作介面
Serializable
Cloneable


建構子
GridBagConstraints()
GridBagConstraints(int gridx, int gridy, int gridwidth, int gridheight, double weightx, double weighty, int anchor, int fill, Insets insets, int ipadx, int ipady)


常用屬性
名稱敘述
CENTER用為 anchor 的設定值,將元件設定在格子的中央
EAST用為 anchor 的設定值,將元件設定在格子的右方
NORTH用為 anchor 的設定值,將元件設定在格子的上方
NORTHEAST用為 anchor 的設定值,將元件設定在格子的右上方
NORTHWEST用為 anchor 的設定值,將元件設定在格子的左上方
SOUTH用為 anchor 的設定值,將元件設定在格子的下方
SOUTHEAST用為 anchor 的設定值,將元件設定在格子的右下方
SOUTHWEST用為 anchor 的設定值,將元件設定在格子的左下方
WEST用為 anchor 的設定值,將元件設定在格子的左方
BOTH用為 fill 的設定值,將元件設定為水平、垂直都填滿格子
HORIZONTAL用為 fill 的設定值,將元件設定為水平填滿格子
NONE用為 fill 的設定值,使此 fill 不發生作用
VERTICAL用為 fill 的設定值,將元件設定為垂直填滿格子
gridx設定元件在由左往右第幾行
gridy設定元件在由上往下第幾列
gridwidth設定元件水平佔用幾個格子
gridheight設定元件垂直佔用幾個格子
anchor設定元件在格子中的方位
fill設定元件填滿格子的模式


舉例如下
import java.awt.*;
import java.awt.event.*;

public class GridBagLayoutDemo {
    public static void main(String[] args) {
        new GridBagLayoutDemo();
    }
    
    public GridBagLayoutDemo() {
        Frame frame = new Frame("AWTDemo");
        frame.addWindowListener(new AdapterDemo());
        frame.setLayout(new GridBagLayout());
        
        Button b1 = new Button("one");
        GridBagConstraints c1 = new GridBagConstraints();
        c1.gridx = 0;
        c1.gridy = 0;
        c1.gridwidth = 1;
        c1.gridheight = 1;
        c1.fill = GridBagConstraints.BOTH;
        c1.anchor = GridBagConstraints.CENTER;
        frame.add(b1, c1);
        
        Button b2 = new Button("two");
        GridBagConstraints c2 = new GridBagConstraints();
        c2.gridx = 1;
        c2.gridy = 0;
        c2.gridwidth = 1;
        c2.gridheight = 1;
        c2.fill = GridBagConstraints.BOTH;
        c2.anchor = GridBagConstraints.CENTER;
        frame.add(b2, c2);
                
        Button b3 = new Button("three");
        GridBagConstraints c3 = new GridBagConstraints();
        c3.gridx = 0;
        c3.gridy = 1;
        c3.gridwidth = 2;
        c3.gridheight = 1;
        c3.fill = GridBagConstraints.BOTH;
        c3.anchor = GridBagConstraints.CENTER;
        frame.add(b3, c3);
        
        frame.pack();
        frame.setVisible(true);
    }    
}

class AdapterDemo extends WindowAdapter {
    public void windowClosing(WindowEvent e) {
        System.exit(0);
    }
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:GridBagLayoutDemo.java
    功能:示範 Java 程式 
    作者:張凱慶
    時間:西元 2012 年 3 月 */


此例將 Frame 設定為 GridBagLayout ,然後建立三個按鈕放入 Frame 之中
Button b1 = new Button("one");
GridBagConstraints c1 = new GridBagConstraints();
c1.gridx = 0;
c1.gridy = 0;
c1.gridwidth = 1;
c1.gridheight = 1;
c1.fill = GridBagConstraints.BOTH;
c1.anchor = GridBagConstraints.CENTER;
frame.add(b1, c1);
        
Button b2 = new Button("two");
GridBagConstraints c2 = new GridBagConstraints();
c2.gridx = 1;
c2.gridy = 0;
c2.gridwidth = 1;
c2.gridheight = 1;
c2.fill = GridBagConstraints.BOTH;
c2.anchor = GridBagConstraints.CENTER;
frame.add(b2, c2);
                
Button b3 = new Button("three");
GridBagConstraints c3 = new GridBagConstraints();
c3.gridx = 0;
c3.gridy = 1;
c3.gridwidth = 2;
c3.gridheight = 1;
c3.fill = GridBagConstraints.BOTH;
c3.anchor = GridBagConstraints.CENTER;
frame.add(b3, c3);


編譯後執行,結果如下



中英文術語對照
類別class
建構子constructor
方法method


您可以繼續參考
排版管理員


相關目錄
Java API 分類導覽
Java 教材
首頁


參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/GridBagConstraints.html

沒有留言: