////////////////////////////////////////////////////////////////////////////////
// << j373f.java >>
//
//  Applet(6):部品(フレーム、応用)
//
//  アプレット内の「表示ボタン」と「非表示ボタン」をクリックすることで
//  フレームの表示と非表示を切り替える。
//
//  WindowAdapterクラスを匿名クラスとして使う。
//
////////////////////////////////////////////////////////////////////////////////

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

public class j373f extends Applet implements ActionListener {

  Frame f;
  Button b1,b2;

  public void init() {

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

    // ボタンの作成とアプレット内へ追加。
    b1 = new Button("表示");
    b2 = new Button("非表示");
    this.add(b1);
    this.add(b2);

    // フレームの作成。
    f = new Frame("フレーム");
    f.setBackground(Color.green);

    // フレームの大きさを設定。
    f.setSize(300,200);

    // フレームの表示。
    f.setVisible(false);

    // イベントリスナの作成と登録。
    f.addWindowListener( new WindowAdapter() {
      // windowClosingメソッドを定義する。
      public void windowClosing(WindowEvent e) {
        f.dispose();
        System.exit(0); // プログラムを終了させるメソッド。
      }
    });

    // イベントリスナーの登録。
    b1.addActionListener(this);
    b2.addActionListener(this);

  }

  public void actionPerformed(ActionEvent ae) {
    if( ae.getSource() == b1 ) {
      f.setVisible(true);
    }
    if( ae.getSource() == b2 ) {
      f.setVisible(false);
    }
  }

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


表示ボタンをクリックすると表示される



非表示ボタンをクリックすると非表示になる