import browser.Applet;
import awt.Graphics;
import awt.Color;
import java.util.Date;

/**
 時計のアプレット MyClock クラスの定義
 */
class MyClock extends Applet implements Runnable {

       Thread clockThread=null;             // スレッド

    /**
     初期設定の関数。
     指定された色のイメージを生成し、アプレットのサイズを設定。
     */
       protected void init() {

             width=208; height=36;
             resize( width, height );
       }

    /**
     アプレットの表示（初期状態）を行う関数。
     */
       public void paint( Graphics g ) {

             g.setForeground( Color.black );
             g.paint3DRect( 0, 0, width, height, true, false );
       }

    /**
     アプレットの表示の変更を行う関数。
     */
       public void update( Graphics g ) {

             Date date = new Date();       //現在の時刻

             g.setForeground( Color.black );
             g.paint3DRect( 0, 0, width, height, true, false );
             g.setForeground( Color.yellow );
             g.drawString( date.toString(), 4, 24 );
       }

    /**
     アプレットが画面に現れた時に呼び出される。
     */
       protected void start() {

             if( clockThread == null ) {
                   clockThread = new Thread(this);
                   clockThread.start();          //スレッド起動
             }
       }

    /**
     アプレットが画面から消えた時に呼び出される。
     */
       protected void stop() {

             if( clockThread != null ) {
                   clockThread = null;           //スレッド停止
             }
       }

    /**
     アプレットが続行する作業
     */
       public void run() {

             while( clockThread.isAlive() ) {
                  repaint();
                  Thread.sleep(200);            //一時停止
             }
       }
}

