////////////////////////////////////////////////////////////////////////////////
// << j325a.java >>
//
//  アプレット(2):レイアウトマネージャー(GridBagLayout、基礎)
//
//  2個のラベルを配置する。
//
//  デフォルトでは、部品は中央に集まるように設定されている。
//  ウィンドウのサイズを変更しても、ラベルのサイズに変化はなく、指定された
//  位置関係を保存しながら、ウィンドウの中央に集まる。
//
// ○GridBagConstrintsクラスの変数
//
//    int gridx        部品の位置が左からgridx+1列目であることを指定する。
//           すなわち、gridx=0が1列目、gridx=1が2列目、・・・。
//
//    int gridy        部品の位置が上からgridy+1行目であることを指定する。
//           すなわち、gridy=0が1行目、gridy=1が2行目、・・・。
//
//    int gridwidth    部品が使う幅(列数)。デフォルトは1。
//
//    int gridheight   部品が使う高さ(行数)。デフォルトは1。
//
////////////////////////////////////////////////////////////////////////////////

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

public class j325a extends Applet {

  public void init() {

    // アプレットの背景色を黄色に設定。
    this.setBackground(Color.yellow);

    // アプレットのレイアウトマネージャをGridBagLayoutに設定。
    GridBagLayout gb = new GridBagLayout();
    this.setLayout(gb);

    // GridBagConstraintsオブジェクトの作成。
    GridBagConstraints gbc = new GridBagConstraints();

    // ラベルの作成。
    Label lab1 = new Label("ラベル1");
    lab1.setBackground(Color.green); // ラベル1の背景色を緑に設定。
    Label lab2 = new Label("ラベル2");
    lab2.setBackground(Color.red); // ラベル2の背景色を赤に設定。

    // ラベル1を(0,0)から(1,1)に配置する。
    gbc.gridx = 0; gbc.gridy = 0;
    gbc.gridwidth = 1; gbc.gridheight = 1;
    gb.setConstraints(lab1,gbc);
    this.add(lab1);

    // ラベル2を(1,1)から(2,2)に配置する。
    gbc.gridx = 1; gbc.gridy = 1;
    gb.setConstraints(lab2,gbc);
    this.add(lab2);

  }

}
HTMLファイル
<html>
<head>
  <title>アプレット</title>
</head>
<body bgcolor=white text=black>
<applet code="j325a.class" width="160" height="160">
</applet>
</body>
</html>
実行結果


HTMLファイル
<html>
<head>
  <title>アプレット</title>
</head>
<body bgcolor=white text=black>
<applet code="j325a.class" width="300" height="200">
</applet>
</body>
</html>
実行結果