public class GridLayout extends Object implements LayoutManager, Serializable
GridLayoutクラスは、コンテナのコンポーネントを矩形グリッドでレイアウトするレイアウト・マネージャです。 コンテナは等しいサイズの矩形に分割され、各矩形にコンポーネントが1つずつ配置されます。 たとえば、次は6つのボタンを3行2列に配置するアプレットです。
import java.awt.*;
import java.applet.Applet;
public class ButtonGrid extends Applet {
public void init() {
setLayout(new GridLayout(3,2));
add(new Button("1"));
add(new Button("2"));
add(new Button("3"));
add(new Button("4"));
add(new Button("5"));
add(new Button("6"));
}
}
コンテナのComponentOrientationプロパティが水平方向に左から右の場合、上記の例は図1に示すような出力を生成します。 コンテナのComponentOrientationプロパティが水平方向に右から左の場合、上記の例は図2に示すような出力を生成します。
|
|
| 図1: 水平方向に左から右 | 図2: 水平方向に右から左 |
コンストラクタによって、またはsetRowsメソッドおよびsetColumnsメソッドによって、行数と列数のどちらもゼロ以外の値に設定されている場合、指定された列数は無視されます。 代わりに、指定された行数およびレイアウトのコンポーネントの総数から、列数が決定されます。 したがって、たとえば、3行と2列が指定されていて9つのコンポーネントをレイアウトに追加する場合、コンポーネントは3列の3行に表示されます。 列数の指定がレイアウトに影響するのは、行数がゼロに設定された場合だけです。
| コンストラクタ | 説明 |
|---|---|
GridLayout() |
1行中にコンポーネントあたり1つの列を持つデフォルト指定でグリッド・レイアウトを作成します。
|
GridLayout(int rows, int cols) |
指定された数の行と列を持つグリッド・レイアウトを作成します。
|
GridLayout(int rows, int cols, int hgap, int vgap) |
指定された数の行と列を持つグリッド・レイアウトを作成します。
|
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
void |
addLayoutComponent(String name, Component comp) |
指定された名前で、指定されたコンポーネントをレイアウトに追加します。
|
int |
getColumns() |
このレイアウト内の列数を返します。
|
int |
getHgap() |
コンポーネント間の水平方向の間隔を取得します。
|
int |
getRows() |
このレイアウト内の行数を返します。
|
int |
getVgap() |
コンポーネント間の垂直方向の間隔を取得します。
|
void |
layoutContainer(Container parent) |
このレイアウトを使って、指定されたコンテナを配置します。
|
Dimension |
minimumLayoutSize(Container parent) |
このグリッド・レイアウトを使って、コンテナ引数の最小サイズを指定します。
|
Dimension |
preferredLayoutSize(Container parent) |
このグリッド・レイアウトを使って、コンテナ引数の推奨サイズを指定します。
|
void |
removeLayoutComponent(Component comp) |
指定されたコンポーネントをレイアウトから削除します。
|
void |
setColumns(int cols) |
このレイアウトの列数を、指定された値に設定します。
|
void |
setHgap(int hgap) |
コンポーネント間の水平方向の間隔を、指定された値に設定します。
|
void |
setRows(int rows) |
このレイアウト内の行数を、指定された値に設定します。
|
void |
setVgap(int vgap) |
コンポーネント間の垂直方向の間隔を、指定された値に設定します。
|
String |
toString() |
このグリッド・レイアウトの値の文字列表現を返します。
|
public GridLayout()
public GridLayout(int rows,
int cols)
rowsとcolsのどちらか1つだけを0にすることができます。つまり、行または列に任意の数のオブジェクトを配置できます。
rows - 行数。値ゼロは任意の数の行を意味する。cols - 列数。値ゼロは任意の数の列を意味する。public GridLayout(int rows,
int cols,
int hgap,
int vgap)
さらに、水平方向と垂直方向の間隔が指定された値に設定されます。 水平方向の間隔は列間に挿入されます。 垂直方向の間隔は行間に挿入されます。
rowsとcolsのどちらか1つだけを0にすることができます。つまり、行または列に任意の数のオブジェクトを配置できます。
すべてのGridLayoutコンストラクタはこのコンストラクタに従います。
rows - 行数。値ゼロは任意の数の行を意味するcols - 列数。値ゼロは任意の数の列を意味するhgap - 水平方向の間隔vgap - 垂直方向の間隔IllegalArgumentException - rowsとcolsの両方の値が0に設定されている場合public int getRows()
public void setRows(int rows)
rows - このレイアウト内の行数IllegalArgumentException - rowsとcolsの両方の値が0に設定されている場合public int getColumns()
public void setColumns(int cols)
cols - このレイアウト内の列数IllegalArgumentException - rowsとcolsの両方の値が0に設定されている場合public int getHgap()
public void setHgap(int hgap)
hgap - コンポーネント間の水平方向の間隔public int getVgap()
public void setVgap(int vgap)
vgap - コンポーネント間の垂直方向の間隔public void addLayoutComponent(String name, Component comp)
addLayoutComponent、インタフェースLayoutManagername - コンポーネントの名前comp - 追加されるコンポーネントpublic void removeLayoutComponent(Component comp)
removeLayoutComponent、インタフェースLayoutManagercomp - 削除されるコンポーネントpublic Dimension preferredLayoutSize(Container parent)
グリッド・レイアウトの推奨幅は、コンテナ内のすべてのコンポーネントの最大推奨幅に列数をかけ、水平パディングに列数マイナス1倍したものを足し、さらにターゲット・コンテナの右と左のイン・セットを足した幅になります。
グリッド・レイアウトの推奨高さは、コンテナ内のすべてのコンポーネントの最大推奨高さに行数をかけ、垂直パディングに行数マイナス1倍したものを足し、さらにターゲット・コンテナの上と下のイン・セットを足した高さになります。
preferredLayoutSize、インタフェースLayoutManagerparent - レイアウトが行われるコンテナminimumLayoutSize(java.awt.Container), Container.getPreferredSize()public Dimension minimumLayoutSize(Container parent)
グリッド・レイアウトの最小幅は、コンテナ内のすべてのコンポーネントの最大最小値に列数をかけ、水平パディングに列数マイナス1倍したものを足し、さらにターゲット・コンテナの右と左のイン・セットを足した幅になります。
グリッド・レイアウトの最小高さは、コンテナ内のすべてのコンポーネントの最大最小高さに行数をかけ、垂直パディングに行数マイナス1倍したものを足し、さらにターゲット・コンテナの上と下のイン・セットを足した高さになります。
minimumLayoutSize、インタフェースLayoutManagerparent - レイアウトが行われるコンテナpreferredLayoutSize(java.awt.Container), Container.doLayout()public void layoutContainer(Container parent)
このメソッドは、GridLayoutオブジェクトの制約を満たすために、指定されたターゲット・コンテナ内のコンポーネントの形状を変更します。
グリッド・レイアウト・マネージャは、個別のコンポーネントのサイズを指定するために、コンテナ内の空き領域をレイアウトの行数と列数に従って等分します。 コンテナの空き領域は、コンテナのサイズから、任意のイン・セットおよび指定された任意の水平または垂直の間隔を引いたものに等しくなります。 グリッド・レイアウト内のコンポーネントはすべて、同じサイズに設定されます。
layoutContainer、インタフェースLayoutManagerparent - レイアウトが行われるコンテナContainer, Container.doLayout() バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。