Awt-borderlayout

提供:Dev Guides
移動先:案内検索

AWT BorderLayoutクラス

前書き

クラス BorderLayout は、東、西、北、南、中央の5つの領域に収まるようにコンポーネントを配置します。 各領域には1つのコンポーネントのみを含めることができ、各領域の各コンポーネントは、対応する定数NORTH、SOUTH、EAST、WEST、およびCENTERによって識別されます。

クラス宣言

以下は、 java.awt.BorderLayout クラスの宣言です。

public class BorderLayout
   extends Object
      implements LayoutManager2, Serializable

フィールド

*java.awt.BorderLayout* クラスのフィールドは次のとおりです。
  • static String AFTER_LAST_LINE -PAGE_ENDの同義語。
  • static String AFTER_LINE_ENDS -LINE_ENDの同義語。
  • static String BEFORE_FIRST_LINE -PAGE_STARTの同義語。
  • static String BEFORE_LINE_BEGINS -LINE_STARTの同義語。
  • static String CENTER -中央のレイアウト制約(コンテナーの中央)。
  • static String EAST -東のレイアウト制約(コンテナの右側)。
  • static String LINE_END -コンポーネントはレイアウトの行方向の最後に配置されます。
  • static String LINE_START -コンポーネントは、レイアウトの行方向の先頭に移動します。
  • static String NORTH -北のレイアウト制約(コンテナの上部)。
  • static String PAGE_END -コンポーネントは、レイアウトのコンテンツの最後の行の後に来ます。
  • static String PAGE_START -コンポーネントはレイアウトのコンテンツの最初の行の前に来ます。
  • static String SOUTH -南のレイアウト制約(コンテナの下部)。
  • static String WEST -西のレイアウト制約(コンテナの左側)。

クラスコンストラクター

S.N. Constructor & Description
1

BorderLayout()

コンポーネント間に隙間のない新しい境界線レイアウトを構築します。

2

BorderLayout(int hgap, int vgap)

コンポーネント間の指定されたギャップでボーダーレイアウトを構築します。

クラスメソッド

S.N. Method & Description
1

void addLayoutComponent(Component comp, Object constraints)

指定された制約オブジェクトを使用して、指定されたコンポーネントをレイアウトに追加します。

2

void addLayoutComponent(String name, Component comp)

レイアウトマネージャーがコンポーネントごとの文字列を使用する場合、コンポーネントcompをレイアウトに追加し、名前で指定された文字列に関連付けます。

3

int getHgap()

コンポーネント間の水平方向のギャップを返します。

4

float getLayoutAlignmentX(Container parent)

x軸に沿った配置を返します。

5

float getLayoutAlignmentY(Container parent)

y軸に沿った配置を返します。

6

int getVgap()

コンポーネント間の垂直ギャップを返します。

7

void invalidateLayout(Container target)

レイアウトを無効にし、レイアウトマネージャーが情報をキャッシュしている場合は破棄することを示します。

8

void layoutContainer(Container target)

このボーダーレイアウトを使用してコンテナ引数をレイアウトします。

9

Dimension maximumLayoutSize(Container target)

指定されたターゲットコンテナ内のコンポーネントを指定して、このレイアウトの最大寸法を返します。

10

Dimension minimumLayoutSize(Container target)

このレイアウトマネージャーを使用して、ターゲットコンテナーの最小サイズを決定します。

11

Dimension preferredLayoutSize(Container target)

コンテナ内のコンポーネントに基づいて、このレイアウトマネージャを使用してターゲットコンテナの推奨サイズを決定します。

12

void removeLayoutComponent(Component comp)

このボーダーレイアウトから指定されたコンポーネントを削除します。

13

void setHgap(int hgap)

コンポーネント間の水平方向の間隔を設定します。

14

void setVgap(int vgap)

コンポーネント間の垂直方向の間隔を設定します。

15

String toString()

このボーダーレイアウトの状態の文字列表現を返します。

継承されたメソッド

このクラスは、次のクラスからメソッドを継承します。

  • java.lang.Object

BorderLayoutの例

たとえば、 D:/> AWT> com> finddevguides> gui> の任意のエディターを使用して、次のJavaプログラムを作成します。

AwtLayoutDemo.java

package com.finddevguides.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();
      awtLayoutDemo.showBorderLayoutDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }
      });
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to finddevguides AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);
   }

   private void showBorderLayoutDemo(){
      headerLabel.setText("Layout in action: BorderLayout");

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(300,300);
      BorderLayout layout = new BorderLayout();
      layout.setHgap(10);
      layout.setVgap(10);
      panel.setLayout(layout);

      panel.add(new Button("Center"),BorderLayout.CENTER);
      panel.add(new Button("Line Start"),BorderLayout.LINE_START);
      panel.add(new Button("Line End"),BorderLayout.LINE_END);
      panel.add(new Button("East"),BorderLayout.EAST);
      panel.add(new Button("West"),BorderLayout.WEST);
      panel.add(new Button("North"),BorderLayout.NORTH);
      panel.add(new Button("South"),BorderLayout.SOUTH);

      controlPanel.add(panel);

      mainFrame.setVisible(true);
   }
}

コマンドプロンプトを使用してプログラムをコンパイルします。 D:/> AWT に移動し、次のコマンドを入力します。

D:\AWT>javac com\finddevguides\gui\AwtlayoutDemo.java

エラーが発生しない場合は、コンパイルが成功したことを意味します。 次のコマンドを使用してプログラムを実行します。

D:\AWT>java com.finddevguides.gui.AwtlayoutDemo

次の出力を確認します

AWT BorderLayout