////////////////////////////////////////////////////////////////////////////////
// << j326a.java >>
//
//  アプレット(2):レイアウトマネージャー(GridBagLayout、応用)
//
//  5個のボタンを配置する。
//
//  これらのボタンは、指定された位置関係を保存しながら表示される。
//
//         −−−−−−−−−−
//         |    |  ②  |
//         − ① −−−−−−−
//         |    | ⑤ |  |
//         −−−−−−− ③ −
//         |    ④  |  |
//         −−−−−−−−−−
//
////////////////////////////////////////////////////////////////////////////////

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

public class j326a 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の背景色を赤に設定。
    Label lab3 = new Label("ラベル3");
    lab3.setBackground(Color.cyan); // ラベル3の背景色を水色に設定。
    Label lab4 = new Label("ラベル4");
    lab4.setBackground(Color.lightGray); // ラベル4の背景色を灰色に設定。
    Label lab5 = new Label("ラベル5");
    lab5.setBackground(Color.pink); // ラベル5の背景色を桃色に設定。

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

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

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

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

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

  }

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


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