在 GridBagLayout 中自訂元件的版面

您可以使用「自訂版面」視窗,對 GridBagLayout 內的元件指定錨點位置、內凹、填滿、跨距、邊距及粗細。

在 GridBagLayout 中,視覺化編輯器會使用限制的預設值, 例如填滿、錨點、加權 x 及加權 y,以更好的方式來顯示元件。 例如,放下 javax.swing.JTextField 時,填滿會設為 HORIZONTAL(JTextField 的預設值是 NONE),加權 X 值會設為 1(JTextField 的預設值是 0)。

從另一個版面管理程式切換為 GridBagLayout 時,Java 視覺化編輯器會根據元件現有的界限,為每一個元件產生限制。 使用 GridBagConstraints 代替空值版面的優點在於每一個元件會依偏好的大小來調整。 如果母視窗的大小變更,或者偏好大小在執行時期因為不同的語言字串而變更, 版面管理程式會調整所有元件的大小和位置,讓空間獲得最佳運用。

若要在 GridBagLayout 內自訂元件的版面:

  1. 在 GridBagLayout 內選取您要自訂的元件, 再按一下自訂版面 自訂版面工具列按鈕工具列按鈕
    提示:選取多個元件,同時在多個元件上設定相同的錨點、填滿和嵌入限制項。
    「自訂版面」視窗會顯示 GridBagLayout 上選定元件的錨點位置、內凹、填滿、跨距、填補及加權值。 如果選了多個元件,而且所有元件的值都一樣,則錨點值和填滿值只會顯示一個按鈕。 所顯示的嵌入值,是針對上次所選的元件而設定。

    「自訂版面」視窗

  2. 如果要調整元件的錨點位置,請按一下其中一個羅盤按鈕:
    • 西北方錨點 - 將元件放在資料格的左上角。
    • 北方錨點 - 將元件放在資料格的正上方。
    • 東北方錨點 - 將元件放在資料格的右上角。
    • 西方錨點 - 將元件放在資料格的正左方。
    • 中央錨點 - 將元件放在資料格的中央。
    • 東方錨點 - 將元件放在資料格的正右方。
    • 西南方錨點 - 將元件放在資料格的左下角。
    • 南方錨點 - 將元件放在資料格的正下方。
    • 東南方錨點 - 將元件放在資料格的右下角。
  3. 若要調整資料格邊框和元件之間的填補距離,請輸入下列任何欄位的值(像素):
    • - 設定元件上方的內凹或填補。
    • - 設定元件左方的內凹或填補。
    • - 設定元件下方的內凹或填補。
    • - 設定元件右方的內凹或填補。
  4. 如果要調整元件在格線資料格的分佈方式,請按一下下面兩個填滿按鈕或是其中一個:
    • 水平分佈 - 指定元件填滿整個資料格的寬度。
    • 垂直分佈 - 指定元件填滿整個資料格的高度。
  5. 若要指定一個元件要跨越多少資料格, 請輸入寬度高度的值:
    • 寬度 - 指定元件佔用的欄數(X 軸)。
    • 高度 - 指定元件佔用的列數(Y 軸)。
  6. 若要指定元件的內部填補,請輸入下列欄位的值(像素):
    • X -
    • Y -
  7. 若要指定如何將額外空間分散至列或欄, 請輸入 XY 欄位的值(使用相對數值,相對於其他元件指定的加權)。

    GridBagLayout 管理程式會分別計算列和欄中所有元件的最大 weightx 和 weighty 的欄列加權。 如果算出的版面小於需要填滿的區域,則版面的額外空間會按照指定的加權,成比例地分散至欄和列。 加權為零的資料格沒有額外空間。

    比方說,如果欄 1 列 1 有一個元件的加權 X 為 3,欄 2 列 1 有一個元件的加權 X 為 1, 則列 1 的加權 X 值合計為 4,在分散空間時,欄 1 將接收 75% 的額外空間。

    • X - 指定在兩欄之間分散額外空間時的加權。
    • Y - 指定在兩列之間分散額外空間時的加權。
相關作業
在 GridBagLayout 內新增或移除元件
讓元件跨越 GridBagLayout 資料格

(C) Copyright IBM Corporation 1999, 2004. All Rights Reserved.