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

クラスBorderLayout

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

public class BorderLayout extends Object implements LayoutManager2, Serializable
ボーダー・レイアウトは、north (上端)、south (下端)、east (右端)、west (左端)、およびcenter (中央)という5つの領域に収まるように、コンポーネントを整列およびサイズ変更して、コンテナに配置します。 各領域はコンポーネントを最大1つずつ含むことができ、それぞれ対応する定数NORTH (上端)、SOUTH (下端)、EAST (右端)、WEST (左端)、CENTER (中央)によって識別されます。 ボーダー・レイアウトを使ってコンテナにコンポーネントを追加するときは、5つの定数のいずれかを使用します。たとえば:
    Panel p = new Panel();
    p.setLayout(new BorderLayout());
    p.add(new Button("Okay"), BorderLayout.SOUTH);
 
次に示すように、文字列の指定がない場合には、BorderLayoutは定数CENTERが指定されたと解釈します。
    Panel p2 = new Panel();
    p2.setLayout(new BorderLayout());
    p2.add(new TextArea());  // Same as p.add(new TextArea(), BorderLayout.CENTER);
 

また、BorderLayoutは、PAGE_STARTPAGE_ENDLINE_START、およびLINE_ENDという相対位置指定定数をサポートします。 ComponentOrientationComponentOrientation.LEFT_TO_RIGHTに設定されているコンテナでは、これらの定数はそれぞれNORTHSOUTHWESTEASTにマッピングされます。

以前のリリースとの互換性を保つため、BorderLayoutにはBEFORE_FIRST_LINEAFTER_LAST_LINEBEFORE_LINE_BEGINS、およびAFTER_LINE_ENDSという相対位置指定定数も用意されています。 これらはそれぞれPAGE_STARTPAGE_ENDLINE_START、およびLINE_ENDと同じ意味を持ちます。 ほかのコンポーネントの相対位置指定定数との互換性の面から、できるだけあとの4つを使用します。

絶対位置指定定数と相対位置指定定数を同時に使用すると、予期せぬ結果が生じることがあります。 両方の種類の定数を使用した場合は、相対位置指定定数が優先されます。 たとえば、方向がLEFT_TO_RIGHTのコンテナでNORTH定数とPAGE_START定数の両方を使用してコンポーネントを追加する場合、PAGE_STARTのみがレイアウトされます。

NOTE: 現在、BorderLayoutは垂直方向をサポートしていません。 コンテナのComponentOrientationisVerticalの設定値は無視されます。

コンポーネントはそれらの推奨サイズやコンテナ・サイズの制約を満たすように配置されます。 NORTHコンポーネントおよびSOUTHコンポーネントは水平方向に引き伸ばされます。EASTコンポーネントおよびWESTコンポーネントは垂直方向に引き伸ばされます。CENTERコンポーネントは、スペースを残さないように、水平および垂直の両方向に引き伸ばされます。

次の例では、BorderLayoutレイアウト・マネージャを使ってアプレット内に5つのボタンが配置されます。

BorderLayoutを示すアプレットの図。 BorderLayoutの各セクションには、レイアウトのその位置に対応するボタン(North、West、Center、East、またはSouthのいずれか)を含む

このアプレットのコードは次のとおりです。


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

 public class buttonDir extends Applet {
   public void init() {
     setLayout(new BorderLayout());
     add(new Button("North"), BorderLayout.NORTH);
     add(new Button("South"), BorderLayout.SOUTH);
     add(new Button("East"), BorderLayout.EAST);
     add(new Button("West"), BorderLayout.WEST);
     add(new Button("Center"), BorderLayout.CENTER);
   }
 }
 

導入されたバージョン:
1.0
関連項目: