Awt-gridbaglayout

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

AWT GridBagLayoutクラス

前書き

クラス GridBagLayout は、コンポーネントを水平および垂直に配置します。

クラス宣言

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

public class GridBagLayout
   extends Object
      implements LayoutManager2, Serializable

フィールド

*java.awt.BorderLayout* クラスのフィールドは次のとおりです。
  • double [] columnWeights -このフィールドは、列の重みのオーバーライドを保持します。
  • int [] columnWidths -このフィールドは、列の最小幅に対するオーバーライドを保持します。
  • protected Hashtable comptable -このハッシュテーブルは、コンポーネントとそのグリッドバッグ制約の間の関連付けを維持します。
  • protected GridBagConstraints defaultConstraints -このフィールドには、デフォルト値を含むグリッドバッグ制約インスタンスが保持されるため、コンポーネントにグリッドバッグ制約が関連付けられていない場合、コンポーネントにはdefaultConstraintsのコピーが割り当てられます。
  • protected java.awt.GridBagLayoutInfo layoutInfo -このフィールドは、グリッドバッグのレイアウト情報を保持します。
  • protected static int MAXGRIDSIZE -グリッドバッグレイアウトでレイアウトできるグリッド位置の最大数(水平および垂直の両方)。
  • protected static int MINSIZE -グリッドバッグレイアウトでレイアウトできる最小のグリッド。
  • protected static int PreferredSIZE -グリッドバッグレイアウトでレイアウトできる優先グリッドサイズ。
  • int [] rowHeights -このフィールドは、行の最小の高さに対するオーバーライドを保持します。
  • double [] rowWeights -このフィールドは、行の重みのオーバーライドを保持します。

クラスコンストラクター

S.N. Constructor & Description
1

GridBagLayout()

グリッドバッグレイアウトマネージャーを作成します。

クラスメソッド

S.N. Method & Description
1

void addLayoutComponent(Component comp, Object constraints)

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

2

void addLayoutComponent(String name, Component comp)

指定された名前の指定されたコンポーネントをレイアウトに追加します。

3

protected void adjustForGravity(GridBagConstraints constraints, Rectangle r)

X、Y、幅、および高さフィールドを、制約のジオメトリとパッドに応じて正しい値に調整します。

4

protected void AdjustForGravity(GridBagConstraints constraints, Rectangle r)

このメソッドは廃止され、下位互換性のためにのみ提供されています。新しいコードは、代わりにadjustForGravityを呼び出す必要があります。

5

protected void arrangeGrid(Container parent)

グリッドをレイアウトします。

6

protected void ArrangeGrid(Container parent)

このメソッドは廃止され、下位互換性のためにのみ提供されています。新しいコードは、代わりにarrangeGridを呼び出す必要があります。

7

GridBagConstraints getConstraints(Component comp)

指定されたコンポーネントの制約を取得します。

8

float getLayoutAlignmentX(Container parent)

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

9

float getLayoutAlignmentY(Container parent)

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

10

int[][] getLayoutDimensions()

レイアウトグリッドの列幅と行高さを決定します。

11

protected java.awt.GridBagLayoutInfo getLayoutInfo(Container parent, int sizeflag)

管理対象の子の現在のセットのGridBagLayoutInfoのインスタンスを入力します。

12

protected java.awt.GridBagLayoutInfo GetLayoutInfo(Container parent, int sizeflag)

このメソッドは廃止され、下位互換性のためにのみ提供されています。新しいコードは、代わりにgetLayoutInfoを呼び出す必要があります。

13

Point getLayoutOrigin()

ターゲットコンテナのグラフィックス座標空間で、レイアウト領域の原点を決定します。

14

double[][] getLayoutWeights()

レイアウトグリッドの列と行の重みを決定します。

15

protected Dimension getMinSize(Container parent, java.awt.GridBagLayoutInfo info)

getLayoutInfo()からの情報に基づいて、マスターの最小サイズを計算します。

16

protected Dimension GetMinSize(Container parent, java.awt.GridBagLayoutInfo info)

このメソッドは廃止され、下位互換性のためにのみ提供されています。新しいコードは、代わりにgetMinSizeを呼び出す必要があります。

17

void invalidateLayout(Container target)

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

18

void layoutContainer(Container parent)

このグリッドバッグレイアウトを使用して、指定されたコンテナをレイアウトします。

19

Point location(int x, int y)

レイアウトグリッドのどのセルに(x、y)で指定されたポイントが含まれるかを決定します。

20

protected GridBagConstraints lookupConstraints(Component comp)

指定されたコンポーネントの制約を取得します。

21

Dimension maximumLayoutSize(Container target)

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

22

Dimension minimumLayoutSize(Container parent)

このグリッドバッグレイアウトを使用して、親コンテナの最小サイズを決定します。

23

Dimension preferredLayoutSize(Container parent)

このグリッドバッグレイアウトを使用して、親コンテナの推奨サイズを決定します。

24

void removeLayoutComponent(Component comp)

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

25

void setConstraints(Component comp, GridBagConstraints constraints)

このレイアウトの指定されたコンポーネントの制約を設定します。

26

String toString()

このグリッドバッグレイアウトの値の文字列表現を返します。

継承されたメソッド

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

  • java.lang.Object

GridBagLayoutの例

たとえば、 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.showGridBagLayoutDemo();
   }

   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 showGridBagLayoutDemo(){
      headerLabel.setText("Layout in action: GridBagLayout");

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(300,300);
      GridBagLayout layout = new GridBagLayout();

      panel.setLayout(layout);
      GridBagConstraints gbc = new GridBagConstraints();

      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridx = 0;
      gbc.gridy = 0;
      panel.add(new Button("Button 1"),gbc);

      gbc.gridx = 1;
      gbc.gridy = 0;
      panel.add(new Button("Button 2"),gbc);

      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.ipady = 20;
      gbc.gridx = 0;
      gbc.gridy = 1;
      panel.add(new Button("Button 3"),gbc);

      gbc.gridx = 1;
      gbc.gridy = 1;
      panel.add(new Button("Button 4"),gbc);

      gbc.gridx = 0;
      gbc.gridy = 2;
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridwidth = 2;
      panel.add(new Button("Button 5"),gbc);

      controlPanel.add(panel);

      mainFrame.setVisible(true);
   }
}

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

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

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

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

次の出力を確認します

AWT GridBagLayout