Javaexamples-applet-clock

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

Javaの例-アプレットを使用して時計を表示しますか?

問題の説明

アプレットを使用して時計を表示する方法は?

溶液

次の例は、StringクラスのvalueOf()メソッドを使用してクロックを表示する方法を示しています。 &Calenderクラスを使用して、秒、分、時間を取得します。

import java.awt.*;
import java.applet.*;
import java.applet.*;
import java.awt.*;
import java.util.*;

public class ClockApplet extends Applet implements Runnable {
   Thread t,t1;
   public void start() {
      t = new Thread(this);
      t.start();
   }
   public void run() {
      t1 = Thread.currentThread();
      while(t1 == t) {
         repaint();
         try {
            t1.sleep(1000);
         }
         catch(InterruptedException e){}
      }
   }
   public void paint(Graphics g) {
      Calendar cal = new GregorianCalendar();
      String hour = String.valueOf(cal.get(Calendar.HOUR));
      String minute = String.valueOf(cal.get(Calendar.MINUTE));
      String second = String.valueOf(cal.get(Calendar.SECOND));
      g.drawString(hour + ":" + minute + ":" + second, 20, 30);
   }
}

結果

上記のコードサンプルは、Java対応のWebブラウザーで次の結果を生成します。

View in Browser.

以下は、アプレットを使用してクロックを表示する別のサンプル例です。

import java.applet.*;
import java.awt.*;
import java.util.*;
import java.text.*;

public class javaApplication6 extends Applet implements Runnable {
   Thread t1 = null;
   int hours = 0, minutes = 0, seconds = 0;
   String time = "";

   public void init() {
      setBackground( Color.green);
   }
   public void start() {
      t1 = new Thread( this );
      t1.start();
   }
   public void run() {
      try {
         while (true) {
            Calendar cal = Calendar.getInstance();
            hours = cal.get( Calendar.HOUR_OF_DAY );
            if ( hours > 12 ) hours -= 12;
            minutes = cal.get( Calendar.MINUTE );
            seconds = cal.get( Calendar.SECOND );

            SimpleDateFormat formatter = new SimpleDateFormat("hh:mm:ss");
            Date d = cal.getTime();
            time = formatter.format( d );

            repaint();
            t1.sleep( 1000 );
         }
      }
      catch (Exception e) { }
   }
   public void paint( Graphics g ) {
      g.setColor( Color.blue );
      g.drawString( time, 50, 50 );
   }
}