JavaTM 2 Platform
Standard Ed. 5.0

java.awt
クラス GridLayout

java.lang.Object
  上位を拡張 java.awt.GridLayout
すべての実装されたインタフェース:
LayoutManager, Serializable

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 に示すような出力を生成します。

2 個ずつ並んだ 6 個のボタンを示す。行 1 はボタン 1 と 2、行 2 はボタン 3 と 4、行 3 はボタン 5 と 6 を示す。 2 個ずつ並んだ 6 個のボタンを示す。行 1 はボタン 2 と 1、行 2 はボタン 4 と 3、行 3 はボタン 6 と 5 を示す。
図 1: 水平方向に左から右 図 2: 水平方向に右から左

行数と列数のどちらもゼロ以外の値に設定されている場合、コンストラクタによって、または setRows メソッドおよび setColumns メソッドによって、指定された列数は無視されます。代わりに、指定された行数およびレイアウトのコンポーネントの総数から、列数が決定されます。したがって、たとえば、3 行と 2 列が指定されていて 9 つのコンポーネントをレイアウトに追加する場合、コンポーネントは 3 列の 3 行に表示されます。列数の指定がレイアウトに影響するのは、行数がゼロに設定された場合だけです。

導入されたバージョン:
JDK1.0
関連項目:
直列化された形式

コンストラクタの概要
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()
          このグリッドレイアウトの値の文字列表現を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

GridLayout

public GridLayout()
1 行中にコンポーネントあたり 1 つの列を持つデフォルト指定でグリッドレイアウトを作成します。

導入されたバージョン:
JDK1.1

GridLayout

public GridLayout(int rows,
                  int cols)
指定された数の行と列を持つグリッドレイアウトを作成します。レイアウト内のコンポーネントはすべて、等しいサイズに指定されます。

rowscols のどちらか 1 つはゼロでもかまいません。ゼロの場合、オブジェクトをいくつでも 1 行または 1 列に配置できることを意味します。

パラメータ:
rows - 行数。値ゼロは任意の行数を意味する
cols - 列数。値ゼロは任意の列数を意味する

GridLayout

public GridLayout(int rows,
                  int cols,
                  int hgap,
                  int vgap)
指定された数の行と列を持つグリッドレイアウトを作成します。レイアウト内のコンポーネントはすべて、等しいサイズに指定されます。

さらに、水平方向と垂直方向の間隔が指定された値に設定されます。水平方向の間隔は列間に挿入されます。垂直方向の間隔は行間に挿入されます。

rowscols のどちらか 1 つはゼロでもかまいません。ゼロの場合、オブジェクトをいくつでも 1 行または 1 列に配置できることを意味します。

すべての GridLayout コンストラクタはこのフレームに従います。

パラメータ:
rows - 行数。値ゼロは任意の行数を意味する
cols - 列数。値ゼロは任意の列数を意味する
hgap - 水平方向の間隔
vgap - 垂直方向の間隔
例外:
IllegalArgumentException - rowscols の値をどちらともゼロに設定した場合
メソッドの詳細

getRows

public int getRows()
このレイアウト内の行数を返します。

戻り値:
このレイアウト内の行数
導入されたバージョン:
JDK1.1

setRows

public void setRows(int rows)
このレイアウト内の行数を、指定された値に設定します。

パラメータ:
rows - このレイアウト内の行数
例外:
IllegalArgumentException - rowscols の値をどちらともゼロに設定した場合
導入されたバージョン:
JDK1.1

getColumns

public int getColumns()
このレイアウト内の列数を返します。

戻り値:
このレイアウト内の列数
導入されたバージョン:
JDK1.1

setColumns

public void setColumns(int cols)
このレイアウトの列数を、指定された値に設定します。コンストラクタまたは setRows メソッドによって指定された行の数がゼロでない場合は、列数の設定はレイアウトに影響しません。その場合、レイアウトに表示される列数は、コンポーネントの総数および指定された行の数によって決定されます。

パラメータ:
cols - このレイアウト内の列数
例外:
IllegalArgumentException - rowscols の値をどちらともゼロに設定した場合
導入されたバージョン:
JDK1.1

getHgap

public int getHgap()
コンポーネント間の水平方向の間隔を返します。

戻り値:
コンポーネント間の水平方向の間隔
導入されたバージョン:
JDK1.1

setHgap

public void setHgap(int hgap)
コンポーネント間の水平方向の間隔を、指定された値に設定します。

パラメータ:
hgap - コンポーネント間の水平方向の間隔
導入されたバージョン:
JDK1.1

getVgap

public int getVgap()
コンポーネント間の垂直方向の間隔を返します。

戻り値:
コンポーネント間の垂直方向の間隔
導入されたバージョン:
JDK1.1

setVgap

public void setVgap(int vgap)
コンポーネント間の垂直方向の間隔を、指定された値に設定します。

パラメータ:
vgap - コンポーネント間の垂直方向の間隔
導入されたバージョン:
JDK1.1

addLayoutComponent

public void addLayoutComponent(String name,
                               Component comp)
指定された名前で、指定されたコンポーネントをレイアウトに追加します。

定義:
インタフェース LayoutManager 内の addLayoutComponent
パラメータ:
name - コンポーネントの名前
comp - 追加されるコンポーネント

removeLayoutComponent

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

定義:
インタフェース LayoutManager 内の removeLayoutComponent
パラメータ:
comp - 削除されるコンポーネント

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
このグリッドレイアウトを使って、コンテナ引数の推奨サイズを指定します。

グリッドレイアウトの推奨幅は、コンテナ内のすべてのコンポーネントの最大推奨幅に列数をかけ、水平パディングに列数マイナス 1 倍したものを足し、さらにターゲットコンテナの右と左のインセットを足した幅になります。

グリッドレイアウトの推奨高さは、コンテナ内のすべてのコンポーネントの最大推奨高さに行数をかけ、垂直パディングに行数マイナス 1 倍したものを足し、さらにターゲットコンテナの上と下のインセットを足した高さになります。

定義:
インタフェース LayoutManager 内の preferredLayoutSize
パラメータ:
parent - 配置が行われるコンテナ
戻り値:
指定されたコンテナのサブコンポーネントを配置する望ましい寸法
関連項目:
minimumLayoutSize(java.awt.Container), Container.getPreferredSize()

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
このグリッドレイアウトを使って、コンテナ引数の最小サイズを指定します。

グリッドレイアウトの最小幅は、コンテナ内のすべてのコンポーネントの最大最小値に列数をかけ、水平パディングに列数マイナス 1 倍したものを足し、さらにターゲットコンテナの右と左のインセットを足した幅になります。

グリッドレイアウトの最小高さは、コンテナ内のすべてのコンポーネントの最大最小高さに行数をかけ、垂直パディングに行数マイナス 1 倍したものを足し、さらにターゲットコンテナの上と下のインセットを足した高さになります。

定義:
インタフェース LayoutManager 内の minimumLayoutSize
パラメータ:
parent - 配置が行われるコンテナ
戻り値:
指定されたコンテナのサブコンポーネントを配置するために必要な最小の寸法
関連項目:
preferredLayoutSize(java.awt.Container), Container.doLayout()

layoutContainer

public void layoutContainer(Container parent)
このレイアウトを使って、指定されたコンテナを配置します。

このメソッドは、GridLayout オブジェクトの制約を満たすために、指定されたターゲットコンテナ内のコンポーネントの形状を再成形します。

グリッドレイアウトマネージャは、個別のコンポーネントのサイズを指定するために、コンテナ内の空き領域をレイアウトの行数と列数に従って等分します。コンテナの空き領域は、コンテナのサイズから、任意のインセットおよび指定された任意の水平または垂直の間隔を引いたものに等しくなります。グリッドレイアウト内のコンポーネントはすべて、同じサイズに設定されます。

定義:
インタフェース LayoutManager 内の layoutContainer
パラメータ:
parent - 配置が行われるコンテナ
関連項目:
Container, Container.doLayout()

toString

public String toString()
このグリッドレイアウトの値の文字列表現を返します。

オーバーライド:
クラス Object 内の toString
戻り値:
このグリッドレイアウトの文字列表現

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。