モジュール java.desktop
パッケージ java.awt

クラスGridBagLayout

java.lang.Object
java.awt.GridBagLayout
すべての実装されたインタフェース:
LayoutManager, LayoutManager2, Serializable

public class GridBagLayout
extends Object
implements LayoutManager2, Serializable
GridBagLayoutクラスは、コンポーネントが同じサイズであることを要求することなく、コンポーネントを垂直方向に、水平方向に、またはベースラインに沿って配置する柔軟なレイアウト・マネージャです。 それぞれのGridBagLayoutオブジェクトは、セルによって構成される動的な矩形グリッドを格納しています。各コンポーネントは、1つ以上のセル(表示領域と呼ぶ)に配置されます。

GridBagLayoutによって管理される各コンポーネントは、GridBagConstraintsのインスタンスと関連します。 制約オブジェクトは、コンポーネントの表示領域をグリッド上に配置する場所、およびコンポーネントをその表示領域内に配置する方法を指定します。 また、この制約オブジェクトに加え、GridBagLayoutは、コンポーネントのサイズを決定するために、各コンポーネントの最小サイズおよび推奨サイズを考慮します。

グリッドの全体の方向は、コンテナのComponentOrientationプロパティによって決まります。 水平方向に左から右の場合、グリッドの座標(0, 0)はコンテナの左上隅になります。この場合、X座標は右方向に、Y座標は下方向に値が増加します。 水平方向に右から左の場合、グリッドの座標(0, 0)はコンテナの右上隅になります。この場合、X座標は左方向に、Y座標は下方向に値が増加します。

グリッド・バッグ・レイアウトを効果的に利用するには、コンポーネントの少なくとも1つのGridBagConstraintsオブジェクトをカスタマイズする必要があります。 GridBagConstraintsオブジェクトをカスタマイズするには、1つまたは複数のインスタンス変数を設定します。

GridBagConstraints.gridx, GridBagConstraints.gridy
コンポーネントの表示領域のリーディング・コーナーを格納するセルを指定します。グリッドの原点にあるセルのアドレスはgridx = 0gridy = 0です。 水平方向に左から右へのレイアウトの場合、コンポーネントのリーディング・コーナーは左上隅です。 水平方向に右から左へのレイアウトの場合、コンポーネントのリーディング・コーナーは右上隅です。 GridBagConstraints.RELATIVE (デフォルト値)を使用して、コンポーネントを、このコンポーネントが追加される直前にコンテナに追加されたコンポーネントの直後に(gridxはx軸に沿って、gridyはy軸に沿って)配置するよう指定します。
GridBagConstraints.gridwidth, GridBagConstraints.gridheight
コンポーネントの表示領域における1行(gridwidth)または1列(gridheight)あたりのセルの数を指定します。 デフォルト値は1です。 コンポーネントの表示領域がgridxから行の最後のセルまで(gridwidth)またはgridyから列の最後のセルまで(gridheight)であることを指定する場合は、GridBagConstraints.REMAINDERを使用します。 コンポーネントの表示領域がgridxから、行の最後から2番目のセルまで(gridwidth))、またはgridyから、列の最後から2番目のセルまで(gridheight)であることを指定する場合は、GridBagConstraints.RELATIVEを使用します。
GridBagConstraints.fill
コンポーネントの表示領域が、必要とするサイズよりも大きい場合には、コンポーネントのサイズ変更を行うかどうかと変更の方法を決定するために使用されます。 指定できる値は、GridBagConstraints.NONE (デフォルト)、GridBagConstraints.HORIZONTAL (コンポーネントの高さは変更せずに、幅を表示領域最大にする)、GridBagConstraints.VERTICAL (コンポーネントの幅は変更せずに、高さを表示領域最大にする)、GridBagConstraints.BOTH (コンポーネントを表示領域最大にする)です。
GridBagConstraints.ipadx, GridBagConstraints.ipady
レイアウト内のコンポーネントの内側のパディング(コンポーネントの最小サイズに追加する値)を指定します。 コンポーネントの幅は、少なくとも最小の幅+ipadxピクセルとなります。 同様に、コンポーネントの高さは、少なくとも最小の高さ+ipadyピクセルとなります。
GridBagConstraints.insets
コンポーネントの外側のパディング、つまりコンポーネントと表示領域の端との間の最小の空間を指定します。
GridBagConstraints.anchor
表示領域内のコンポーネントの位置を指定します。 可能な値は3種類あります: 絶対値、方向相対値およびベースライン相対値。 方向の相対値は、コンテナのComponentOrientationプロパティを基準として解釈されますが、絶対値は解釈されません。 ベースライン相対値は、ベースラインを基準にして計算されます。 有効な値は次のとおりです。
  • 絶対値:
    • GridBagConstraints.NORTH
    • GridBagConstraints.SOUTH
    • GridBagConstraints.WEST
    • GridBagConstraints.EAST
    • GridBagConstraints.NORTHWEST
    • GridBagConstraints.NORTHEAST
    • GridBagConstraints.SOUTHWEST
    • GridBagConstraints.SOUTHEAST
    • GridBagConstraints.CENTER (デフォルト)
  • 方向相対値:
    • GridBagConstraints.PAGE_START
    • GridBagConstraints.PAGE_END
    • GridBagConstraints.LINE_START
    • GridBagConstraints.LINE_END
    • GridBagConstraints.FIRST_LINE_START
    • GridBagConstraints.FIRST_LINE_END
    • GridBagConstraints.LAST_LINE_START
    • GridBagConstraints.LAST_LINE_END
  • ベースライン相対値:
    • GridBagConstraints.BASELINE
    • GridBagConstraints.BASELINE_LEADING
    • GridBagConstraints.BASELINE_TRAILING
    • GridBagConstraints.ABOVE_BASELINE
    • GridBagConstraints.ABOVE_BASELINE_LEADING
    • GridBagConstraints.ABOVE_BASELINE_TRAILING
    • GridBagConstraints.BELOW_BASELINE
    • GridBagConstraints.BELOW_BASELINE_LEADING
    • GridBagConstraints.BELOW_BASELINE_TRAILING
GridBagConstraints.weightx, GridBagConstraints.weighty
スペースの分配方法を決定するために使用されます。これは、サイズ変更の動作を指定するために重要です。 1行(weightx)または1列(weighty)につき、少なくとも1つのコンポーネントにウエイトを設定しないかぎり、すべてのコンポーネントがコンテナの中央に集まります。 これは、ウエイトが0の場合(デフォルト)には、GridBagLayoutオブジェクトが余分なスペースをすべてセルのグリッドとコンテナの端の間に配置してしまうからです。

各行にはベースラインがあります; ベースラインは、その行の有効なベースラインを持ち、ベースライン(コンポーネントのアンカー値は、 BASELINEBASELINE_LEADINGまたはBASELINE_TRAILINGのいずれかです)に沿って整列されたコンポーネントによって決まります。 行内でいずれのコンポーネントも有効なベースラインを持たない場合、その行にベースラインはありません。

複数の行にまたがるようなコンポーネントは、開始行のベースライン(ベースライン・サイズ変更動作が CONSTANT_ASCENTの場合)、または終了行のベースライン(ベースライン・サイズ変更動作がCONSTANT_DESCENTの場合)に沿って配置されます。 コンポーネントが沿う行は、支配行と呼ばれます。

次の図に、ベースラインのレイアウトを示します。この図では複数行にまたがるコンポーネントが存在します。

後述の本文でこのグラフィックを説明する(図1)

このレイアウトには3つのコンポーネントがあります。
  • 行0から始まり、行1で終わるパネル。 パネルにはベースライン・サイズ変更動作CONSTANT_DESCENTとアンカーBASELINEが設定されています。 ベースライン・サイズ変更動作がCONSTANT_DESCENTであるため、パネルの支配行は行1です。
  • 2つのボタン。それぞれベースライン・サイズ変更動作CENTER_OFFSETとアンカーBASELINEが設定されています。
2番目のボタンとパネルが同じ支配行を共有しているため、どちらも各自のベースラインに沿って配置されています。

ベースライン相対値のいずれかを使用して配置されたコンポーネントは、絶対値または方向相対値を使用して配置した場合と異なる方法でサイズが変更されます。 コンポーネントの変更方法は、支配行のベースラインの変更方法によって指示されます。 同じ支配行を持つ任意のコンポーネントでベースライン・サイズ変更動作CONSTANT_DESCENTが設定されている場合、ベースラインは表示領域の下端にアンカー設定されます。そうでない場合、ベースラインは表示領域の上端にアンカー設定されます。 次のルールによってサイズ変更動作が指示されます。

  • ベースラインより上に配置されたサイズ変更可能コンポーネントは、ベースラインと同じ高さまでしか高くすることはできません。 たとえばベースラインが100で、上端にアンカー設定されている場合、ベースラインより上に配置されたサイズ変更可能コンポーネントは100単位よりも高くすることはできません。
  • 同様に、ベースラインより下に配置されたサイズ変更可能コンポーネントは、表示高さとベースラインの間隔よりも高くすることはできません。
  • ベースラインに配置され、ベースライン・サイズ変更動作OTHERが設定されたサイズ変更可能コンポーネントの場合は、サイズ変更後のサイズのベースラインが表示領域に収まる場合に限り、サイズ変更されます。 ベースラインが表示領域内に収まらなくなる場合、コンポーネントはサイズ変更されません。
  • ベースライン・サイズ変更動作がOTHERではないベースラインに配置されたコンポーネントは、display height - baseline+baseline of componentまで高くすることができます。
ベースラインに沿ってコンポーネントを配置したが、そのコンポーネントに有効なベースラインがない場合は、コンポーネントの空間内で垂直方向に中央揃えされます。 同様に、ベースラインを基準にコンポーネントを配置したが、行内のどのコンポーネントも有効なベースラインを持たない場合、そのコンポーネントは垂直方向に中央揃えされます。

次に示す図は、グリッド・バッグ・レイアウトによって管理される10個のコンポーネント(すべてのボタン)を示します。 図2は水平方向に左から右へのコンテナを示し、図3は水平方向に右から左へのコンテナを示します。

前の文は、このグラフィック(図2)を説明しています。

図2: 水平方向に左から右

前の文は、このグラフィック(図3)を説明しています。

図3: 水平方向に右から左


10個のコンポーネントのそれぞれは、その関連しているGridBagConstraintsオブジェクトのfillフィールドがGridBagConstraints.BOTHに設定されています。 さらにコンポーネントは、デフォルトとは異なる次の制約を持っています。

  • Button1、Button2、Button3: weightx = 1.0
  • Button4: weightx = 1.0, gridwidth = GridBagConstraints.REMAINDER
  • Button5: gridwidth = GridBagConstraints.REMAINDER
  • Button6: gridwidth = GridBagConstraints.RELATIVE
  • Button7: gridwidth = GridBagConstraints.REMAINDER
  • Button8: gridheight = 2, weighty = 1.0
  • Button9、Button 10: gridwidth = GridBagConstraints.REMAINDER

上記の例を実装したサンプル・コードを示します。


 import java.awt.*;
 import java.util.*;
 import java.applet.Applet;

 public class GridBagEx1 extends Applet {

     protected void makebutton(String name,
                               GridBagLayout gridbag,
                               GridBagConstraints c) {
         Button button = new Button(name);
         gridbag.setConstraints(button, c);
         add(button);
     }

     public void init() {
         GridBagLayout gridbag = new GridBagLayout();
         GridBagConstraints c = new GridBagConstraints();

         setFont(new Font("SansSerif", Font.PLAIN, 14));
         setLayout(gridbag);

         c.fill = GridBagConstraints.BOTH;
         c.weightx = 1.0;
         makebutton("Button1", gridbag, c);
         makebutton("Button2", gridbag, c);
         makebutton("Button3", gridbag, c);

         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         makebutton("Button4", gridbag, c);

         c.weightx = 0.0;                //reset to the default
         makebutton("Button5", gridbag, c); //another row

         c.gridwidth = GridBagConstraints.RELATIVE; //next-to-last in row
         makebutton("Button6", gridbag, c);

         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         makebutton("Button7", gridbag, c);

         c.gridwidth = 1;                //reset to the default
         c.gridheight = 2;
         c.weighty = 1.0;
         makebutton("Button8", gridbag, c);

         c.weighty = 0.0;                //reset to the default
         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         c.gridheight = 1;               //reset to the default
         makebutton("Button9", gridbag, c);
         makebutton("Button10", gridbag, c);

         setSize(300, 100);
     }

     public static void main(String args[]) {
         Frame f = new Frame("GridBag Layout Example");
         GridBagEx1 ex1 = new GridBagEx1();

         ex1.init();

         f.add("Center", ex1);
         f.pack();
         f.setSize(f.getPreferredSize());
         f.show();
     }
 }
 

導入されたバージョン:
1.0
関連項目:
GridBagConstraints, GridBagLayoutInfo, ComponentOrientation, 直列化された形式
  • フィールドのサマリー

    フィールド 
    修飾子と型 フィールド 説明
    double[] columnWeights
    このフィールドは、列のウエイトに対するオーバーライドを保持します。
    int[] columnWidths
    このフィールドは、列の最小幅に対するオーバーライドを保持します。
    protected Hashtable<Component,​GridBagConstraints> comptable
    このハッシュ表は、コンポーネントとコンポーネントのグリッド・バッグ制約との関連性を維持します。
    protected GridBagConstraints defaultConstraints
    このフィールドには、デフォルト値を含むグリッド・バッグ制約のインスタンスが保持されているため、コンポーネントにグリッド・バッグ制約が関連付けられていない場合、そのコンポーネントにはdefaultConstraintsのコピーが割り当てられます。
    protected GridBagLayoutInfo layoutInfo
    このフィールドは、グリッド・バッグのレイアウト情報を保持します。
    protected static int MAXGRIDSIZE
    このフィールドは、配列を予約するためには使用されなくなり、下位互換性のために維持されています。
    protected static int MINSIZE
    グリッド・バッグ・レイアウトによって配置できる最小のグリッドです。
    protected static int PREFERREDSIZE
    グリッド・バッグ・レイアウトによって配置できるグリッドの推奨サイズです。
    int[] rowHeights
    このフィールドは、行の最小の高さに対するオーバーライドを保持します。
    double[] rowWeights
    このフィールドは、行のウエイトに対するオーバーライドを保持します。
  • コンストラクタのサマリー

    コンストラクタ 
    コンストラクタ 説明
    GridBagLayout()
    グリッド・バッグ・レイアウト・マネージャを作成します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    void addLayoutComponent​(Component comp, Object constraints)
    指定されたconstraintsオブジェクトを使用して、指定されたコンポーネントをレイアウトに追加します。
    void addLayoutComponent​(String name, Component comp)
    このレイアウト・マネージャはコンポーネントごとの文字列を使用しないため、何もしません。
    protected void adjustForGravity​(GridBagConstraints constraints, Rectangle r)
    x、y、幅、高さフィールドを、制約幾何学的図形およびパッドに応じて正しい値に調整します。
    protected void AdjustForGravity​(GridBagConstraints constraints, Rectangle r)
    x、y、幅、高さフィールドを、制約幾何学的図形およびパッドに応じて正しい値に調整します。
    protected void arrangeGrid​(Container parent)
    グリッドを配置します。
    protected void ArrangeGrid​(Container parent)
    このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにarrangeGridを呼び出すようにしてください。
    GridBagConstraints getConstraints​(Component comp)
    指定されたコンポーネントの制約を返します。
    float getLayoutAlignmentX​(Container parent)
    x軸方向の配置を返します。
    float getLayoutAlignmentY​(Container parent)
    y軸方向の配置を返します。
    int[][] getLayoutDimensions()
    レイアウト・グリッドの列の幅と行の高さを指定します。
    protected GridBagLayoutInfo getLayoutInfo​(Container parent, int sizeflag)
    管理される子の現在のセットに対するGridBagLayoutInfoのインスタンスに値を入力します。
    protected GridBagLayoutInfo GetLayoutInfo​(Container parent, int sizeflag)
    このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにgetLayoutInfoを呼び出すようにしてください。
    Point getLayoutOrigin()
    ターゲット・コンテナのグラフィックス座標空間内で、レイアウト領域の原点を指定します。
    double[][] getLayoutWeights()
    レイアウト・グリッドの列と行のウエイトを指定します。
    protected Dimension getMinSize​(Container parent, GridBagLayoutInfo info)
    getLayoutInfoからの情報に基づいて、マスターの最小サイズを計算します。
    protected Dimension GetMinSize​(Container parent, GridBagLayoutInfo info)
    このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにgetMinSizeを呼び出すようにしてください。
    void invalidateLayout​(Container target)
    レイアウトを無効にします。このとき、レイアウト・マネージャが情報をキャッシュしていればそれを破棄します。
    void layoutContainer​(Container parent)
    このグリッド・バッグ・レイアウトを使って指定されたコンテナを配置します。
    Point location​(int x, int y)
    (x, y)によって指定された点がレイアウト・グリッド内のどのセルに含まれているかを判定します。
    protected GridBagConstraints lookupConstraints​(Component comp)
    指定されたコンポーネントの制約を返します。
    Dimension maximumLayoutSize​(Container target)
    指定されたターゲット・コンテナにコンポーネントが与えられた場合の、レイアウトの最大サイズを返します。
    Dimension minimumLayoutSize​(Container parent)
    このグリッド・バッグ・レイアウトを使用して、parentコンテナの最小サイズを判定します。
    Dimension preferredLayoutSize​(Container parent)
    このグリッド・バッグ・レイアウトを使用して、parentコンテナの優先サイズを判定します。
    void removeLayoutComponent​(Component comp)
    指定されたコンポーネントをこのレイアウトから削除します。
    void setConstraints​(Component comp, GridBagConstraints constraints)
    このレイアウトの指定されたコンポーネントに対して制約を設定します。
    String toString()
    グリッド・バッグ・レイアウトの値の文字列表現を返します。

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait
  • フィールド詳細

    • MAXGRIDSIZE

      protected static final int MAXGRIDSIZE
      このフィールドは、配列を予約するためには使用されなくなり、下位互換性のために維持されています。 以前は、グリッド・バッグ・レイアウトによって配置できるグリッド位置(縦横どちらとも)の最大数でした。 現在の実装では、グリッド・サイズに制限はありません。
      関連項目:
      定数フィールド値
    • MINSIZE

      protected static final int MINSIZE
      グリッド・バッグ・レイアウトによって配置できる最小のグリッドです。
      関連項目:
      定数フィールド値
    • PREFERREDSIZE

      protected static final int PREFERREDSIZE
      グリッド・バッグ・レイアウトによって配置できるグリッドの推奨サイズです。
      関連項目:
      定数フィールド値
    • comptable

      protected Hashtable<Component,​GridBagConstraints> comptable
      このハッシュ表は、コンポーネントとコンポーネントのグリッド・バッグ制約との関連性を維持します。 comptable内のキーはコンポーネントで、値はGridBagConstraintsのインスタンスです。
      関連項目:
      GridBagConstraints
    • defaultConstraints

      protected GridBagConstraints defaultConstraints
      このフィールドには、デフォルト値を含むグリッド・バッグ制約のインスタンスが保持されているため、コンポーネントにグリッド・バッグ制約が関連付けられていない場合、そのコンポーネントにはdefaultConstraintsのコピーが割り当てられます。
      関連項目:
      getConstraints(Component), setConstraints(Component, GridBagConstraints), lookupConstraints(Component)
    • layoutInfo

      protected GridBagLayoutInfo layoutInfo
      このフィールドは、グリッド・バッグのレイアウト情報を保持します。 このフィールドの情報は、グリッド・バッグの最新の検査に基づきます。 layoutInfonullの場合は、グリッド・バッグにコンポーネントがないか、またはコンポーネントがあってもそれがまだ検査を受けていないことを意味します。
      関連項目:
      getLayoutInfo(Container, int)
    • columnWidths

      public int[] columnWidths
      このフィールドは、列の最小幅に対するオーバーライドを保持します。 このフィールドがnullではない場合、すべての最小列幅が計算されたあとで、その値がグリッド・バッグに適用されます。 columnWidthsに列数より多くの要素がある場合、columnWidthの要素数に合わせるためにグリッド・バッグに列が追加されます。
      関連項目:
      getLayoutDimensions()
    • rowHeights

      public int[] rowHeights
      このフィールドは、行の最小の高さに対するオーバーライドを保持します。 このフィールドがnullではない場合、すべての最小の行の高さが計算されたあとで、その値がグリッド・バッグに適用されます。 rowHeightsに行数より多くの要素がある場合、rowHeightsの要素数に合わせるために、グリッド・バッグに行が追加されます。
      関連項目:
      getLayoutDimensions()
    • columnWeights

      public double[] columnWeights
      このフィールドは、列のウエイトに対するオーバーライドを保持します。 このフィールドがnullではない場合、すべての列のウエイトが計算されたあとで、その値がグリッド・バッグに適用されます。 列iのcolumnWeights[i] >の重みがcolumnWeights[i]の重みに割り当てられると、列iには重みが割り当てられます。 columnWeightsに列数より多くの要素がある場合、超過した要素は無視され、列の作成は行われません。
    • rowWeights

      public double[] rowWeights
      このフィールドは、行のウエイトに対するオーバーライドを保持します。 このフィールドがnullではない場合、すべての行のウエイトが計算されたあとで、その値がグリッド・バッグに適用されます。 行iのrowWeights[i] > の重みの場合、rowWeights[i]の重みに行iが割り当てられます。 rowWeightsに行数より多くの要素がある場合、超過した要素は無視され、行の作成は行われません。
  • コンストラクタの詳細

    • GridBagLayout

      public GridBagLayout()
      グリッド・バッグ・レイアウト・マネージャを作成します。
  • メソッドの詳細

    • setConstraints

      public void setConstraints​(Component comp, GridBagConstraints constraints)
      このレイアウトの指定されたコンポーネントに対して制約を設定します。
      パラメータ:
      comp - 変更されるコンポーネント
      constraints - 適用される制約
    • getConstraints

      public GridBagConstraints getConstraints​(Component comp)
      指定されたコンポーネントの制約を返します。 実際のGridBagConstraintsオブジェクトのコピーが返されます。
      パラメータ:
      comp - 照会されるコンポーネント
      戻り値:
      このグリッド・バッグ・レイアウトで指定されたコンポーネントの制約、つまり実際の制約オブジェクトのコピーが返される
    • lookupConstraints

      protected GridBagConstraints lookupConstraints​(Component comp)
      指定されたコンポーネントの制約を返します。 戻り値はコピーではなく、配置メカニズムで使用される実際のGridBagConstraintsオブジェクトです。

      compGridBagLayoutにない場合、一連のデフォルトのGridBagConstraintsが返されます。 nullcomp値は無効で、nullが返されます。

      パラメータ:
      comp - 照会されるコンポーネント
      戻り値:
      指定されたコンポーネントの制約
    • getLayoutOrigin

      public Point getLayoutOrigin()
      ターゲット・コンテナのグラフィックス座標空間内で、レイアウト領域の原点を指定します。 この値はコンテナのComponentOrientationの値とは関係なく、レイアウト領域の左上隅のピクセル座標を表します。 これは、セル座標(0,0)によって指定されるグリッドの原点とは異なります。 ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。
      戻り値:
      レイアウト・グリッドの左上隅にあるセルのグラフィックスの原点
      導入されたバージョン:
      1.1
      関連項目:
      ComponentOrientation
    • getLayoutDimensions

      public int[][] getLayoutDimensions()
      レイアウト・グリッドの列の幅と行の高さを指定します。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      戻り値:
      レイアウト列の幅とレイアウト行の高さを格納する、2つの配列から構成される配列
      導入されたバージョン:
      1.1
    • getLayoutWeights

      public double[][] getLayoutWeights()
      レイアウト・グリッドの列と行のウエイトを指定します。 ウエイトを使うと、レイアウトに余分な空きスペースがある場合に、指定された列または行をその推奨サイズよりどれだけ拡大できるかを計算できます。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      戻り値:
      レイアウト列の水平のウエイトとレイアウト行の垂直のウエイトを表現する、2つの配列から構成される配列
      導入されたバージョン:
      1.1
    • location

      public Point location​(int x, int y)
      (x, y)によって指定された点がレイアウト・グリッド内のどのセルに含まれているかを判定します。 各セルは列インデックス(0から列数 - 1)と行インデックス(0から行数 - 1)で識別されます。

      (x, y)がグリッドの外側にある場合、次のルールが適用されます。 xが左から右方向のコンテナのレイアウトの左にある場合、または右から左方向のコンテナのレイアウトの右にある場合、列インデックスはゼロが返されます。 xが左から右方向のコンテナのレイアウトの右にある場合、または右から左方向のコンテナのレイアウトの左にある場合、列インデックスは列数が返されます。 yがレイアウトの上にある場合は、行インデックスはゼロが返され、yがレイアウトの下にある場合は、行数が返されます。 コンテナの方向は、そのComponentOrientationプロパティによって指定されます。

      パラメータ:
      x - 点のx座標
      y - 点のy座標
      戻り値:
      レイアウト・グリッドのどのセルが点(xy)を格納しているかを示す順序付きペアのインデックス。
      導入されたバージョン:
      1.1
      関連項目:
      ComponentOrientation
    • addLayoutComponent

      public void addLayoutComponent​(String name, Component comp)
      このレイアウト・マネージャはコンポーネントごとの文字列を使用しないため、何もしません。
      定義:
      addLayoutComponent、インタフェース: LayoutManager
      パラメータ:
      name - コンポーネントに関連付けられる文字列
      comp - 追加されるコンポーネント
    • addLayoutComponent

      public void addLayoutComponent​(Component comp, Object constraints)
      指定されたconstraintsオブジェクトを使用して、指定されたコンポーネントをレイアウトに追加します。 制約は可変であり、そのためキャッシュ時に複製されることに注意します。
      定義:
      addLayoutComponent、インタフェース: LayoutManager2
      パラメータ:
      comp - 追加されるコンポーネント
      constraints - コンポーネントをレイアウトに追加する方法を指定するオブジェクト
      例外:
      IllegalArgumentException - constraintsGridBagConstraintではない場合
    • removeLayoutComponent

      public void removeLayoutComponent​(Component comp)
      指定されたコンポーネントをこのレイアウトから削除します。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      定義:
      removeLayoutComponent、インタフェース: LayoutManager
      パラメータ:
      comp - 削除されるコンポーネント。
      関連項目:
      Container.remove(java.awt.Component), Container.removeAll()
    • preferredLayoutSize

      public Dimension preferredLayoutSize​(Container parent)
      このグリッド・バッグ・レイアウトを使用して、parentコンテナの優先サイズを判定します。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      定義:
      preferredLayoutSize、インタフェース: LayoutManager
      パラメータ:
      parent - レイアウトが行われるコンテナ
      戻り値:
      parentコンテナの推奨サイズ
      関連項目:
      Container.getPreferredSize()
    • minimumLayoutSize

      public Dimension minimumLayoutSize​(Container parent)
      このグリッド・バッグ・レイアウトを使用して、parentコンテナの最小サイズを判定します。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      定義:
      minimumLayoutSize、インタフェース: LayoutManager
      パラメータ:
      parent - レイアウトが行われるコンテナ
      戻り値:
      parentコンテナの最小サイズ
      関連項目:
      Container.doLayout()
    • maximumLayoutSize

      public Dimension maximumLayoutSize​(Container target)
      指定されたターゲット・コンテナにコンポーネントが与えられた場合の、レイアウトの最大サイズを返します。
      定義:
      maximumLayoutSize、インタフェース: LayoutManager2
      パラメータ:
      target - 配置する必要があるコンテナ
      戻り値:
      このレイアウトの最大サイズ
      関連項目:
      Container, minimumLayoutSize(Container), preferredLayoutSize(Container)
    • getLayoutAlignmentX

      public float getLayoutAlignmentX​(Container parent)
      x軸方向の配置を返します。 これは、そのコンポーネントがほかのコンポーネントに対してどのように配置されるべきかを指定したものです。 この値は0から1の間の数値で、0は原点に沿った配置を表し、1は原点からもっとも遠いところに、0.5は中央に配置されます。
      定義:
      getLayoutAlignmentX、インタフェース: LayoutManager2
      パラメータ:
      parent - ターゲット・コンテナ
      戻り値:
      中央への配置を示す値0.5f
    • getLayoutAlignmentY

      public float getLayoutAlignmentY​(Container parent)
      y軸方向の配置を返します。 これは、そのコンポーネントがほかのコンポーネントに対してどのように配置されるべきかを指定したものです。 この値は0から1の間の数値で、0は原点に沿った配置を表し、1は原点からもっとも遠いところに、0.5は中央に配置されます。
      定義:
      getLayoutAlignmentY、インタフェース: LayoutManager2
      パラメータ:
      parent - ターゲット・コンテナ
      戻り値:
      中央への配置を示す値0.5f
    • invalidateLayout

      public void invalidateLayout​(Container target)
      レイアウトを無効にします。このとき、レイアウト・マネージャが情報をキャッシュしていればそれを破棄します。
      定義:
      invalidateLayout、インタフェース: LayoutManager2
      パラメータ:
      target - ターゲット・コンテナ
    • layoutContainer

      public void layoutContainer​(Container parent)
      このグリッド・バッグ・レイアウトを使って指定されたコンテナを配置します。 このメソッドはこのGridBagLayoutオブジェクトの制約を満たすために、指定されたコンテナ内のコンポーネントの形状を変更します。

      ほとんどのアプリケーションはこのメソッドを直接には呼び出しません。

      定義:
      layoutContainer、インタフェース: LayoutManager
      パラメータ:
      parent - レイアウトが行われるコンテナ
      関連項目:
      Container, Container.doLayout()
    • toString

      public String toString()
      グリッド・バッグ・レイアウトの値の文字列表現を返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      このグリッド・バッグ・レイアウトの文字列の表現
    • getLayoutInfo

      protected GridBagLayoutInfo getLayoutInfo​(Container parent, int sizeflag)
      管理される子の現在のセットに対するGridBagLayoutInfoのインスタンスに値を入力します。 このインスタンスには、子のセットを通じて、次の3つの段階の実行が必要です。
      1. レイアウト・グリッドの寸法の計算
      2. コンポーネントを配置するセルの指定
      3. 行または列間へのウエイトと最小サイズの配分。
      また、このインスタンスは以降のループでふたたび問い合わせる必要がないように、最初に検出された時点ですべての子の最小サイズをキャッシュします。

      このメソッドは、GridBagLayoutが内部的に使用するだけにしてください。

      パラメータ:
      parent - レイアウト・コンテナ
      sizeflag - PREFERREDSIZEまたはMINSIZE
      戻り値:
      一連の子のGridBagLayoutInfo
      導入されたバージョン:
      1.4
    • GetLayoutInfo

      protected GridBagLayoutInfo GetLayoutInfo​(Container parent, int sizeflag)
      このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにgetLayoutInfoを呼び出すようにしてください。 管理される子の現在のセットに対するGridBagLayoutInfoのインスタンスに値を入力します。 このメソッドは、getLayoutInfoと同じです; 詳細については、getLayoutInfoの説明を参照してください。
      パラメータ:
      parent - レイアウト・コンテナ
      sizeflag - PREFERREDSIZEまたはMINSIZE
      戻り値:
      一連の子のGridBagLayoutInfo
    • adjustForGravity

      protected void adjustForGravity​(GridBagConstraints constraints, Rectangle r)
      x、y、幅、高さフィールドを、制約幾何学的図形およびパッドに応じて正しい値に調整します。 このメソッドは、GridBagLayoutが内部的に使用するだけにしてください。
      パラメータ:
      constraints - 適用される制約
      r - 調整するRectangle
      導入されたバージョン:
      1.4
    • AdjustForGravity

      protected void AdjustForGravity​(GridBagConstraints constraints, Rectangle r)
      x、y、幅、高さフィールドを、制約幾何学的図形およびパッドに応じて正しい値に調整します。

      このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにadjustForGravityを呼び出すようにしてください。 このメソッドは、adjustForGravityと同じです。

      パラメータ:
      constraints - 適用される制約
      r - 調整するRectangle
    • getMinSize

      protected Dimension getMinSize​(Container parent, GridBagLayoutInfo info)
      getLayoutInfoからの情報に基づいて、マスターの最小サイズを計算します。 このメソッドは、GridBagLayoutが内部的に使用するだけにしてください。
      パラメータ:
      parent - レイアウト・コンテナ
      info - この親のレイアウト情報
      戻り値:
      最小サイズが格納されているDimensionオブジェクト
      導入されたバージョン:
      1.4
    • GetMinSize

      protected Dimension GetMinSize​(Container parent, GridBagLayoutInfo info)
      このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにgetMinSizeを呼び出すようにしてください。 このメソッドは、getMinSizeと同じです。
      パラメータ:
      parent - レイアウト・コンテナ
      info - この親のレイアウト情報
      戻り値:
      最小サイズが格納されているDimensionオブジェクト
    • arrangeGrid

      protected void arrangeGrid​(Container parent)
      グリッドを配置します。 このメソッドは、GridBagLayoutが内部的に使用するだけにしてください。
      パラメータ:
      parent - レイアウト・コンテナ
      導入されたバージョン:
      1.4
    • ArrangeGrid

      protected void ArrangeGrid​(Container parent)
      このメソッドは廃止されており、下位互換性のためにのみ提供されています。新しいコードは、かわりにarrangeGridを呼び出すようにしてください。 このメソッドは、arrangeGridと同じです。
      パラメータ:
      parent - レイアウト・コンテナ