編寫Applet小程序,透過在HTML文件中接收參數, 以不同顏色、字型顯示目前的系統時間。
import java.awt.*; import java.applet.Applet; import java.util.*; import java.awt.Graphics; public class clock extends Applet implements Runnable //繼承Applet類別並實作Runnable介面{ Thread clockThread=null; //建立一個空線程Calendar now; private String s1; private int size; int r1,g1,b1; public void init() //初始化方法{ size=Integer.parseInt(getParameter("size"));//取得字體大小} public void start() { if(clockThread==null) { clockThread=new Thread(this,"Clock2"); //建立執行緒物件clockThread clockThread.start(); //開始執行緒} } public void run() //實作Runnable介面的run()方法{ Thread myThread=Thread.currentThread();//建立執行緒物件myThread while(clockThread==myThread) { repaint(); //透過repaint方法呼叫paint方法try { Thread.sleep(1000); //休眠1秒} catch (InterruptedException e){} } } public void paint(Graphics g) { r1=(int)(Math.random()*255); //透過呼叫Math類別的random產生隨機數g1=(int)(Math.random()*255); //再透過隨機數分別設定三原色,紅綠藍b1=(int)(Math.random()*255); Color c=new Color(r1,g1,b1); //建立一個顏色物件g.setColor(c); //設定顏色now=Calendar.getInstance(); //取得系統目前時間s1=now.get(now.HOUR)+"時" +now.get(now.MINUTE)+"分" +now.get( now.SECOND)+"秒"; Font f=new Font("",1,size); //設定字體g.setFont(f); g.drawString(s1,10,50); //顯示指定大小顏色的字串} public void stop() //呼叫stop方法,停止執行緒{ clockThread=null; } } <pre name="code"><html> <Applet code="clock.class" width=300 height=100> <param name=s1 value=s1> <param name=size value=30> </Applet> </html></pre><br> <pre></pre> <p> </p> <pre></pre> <div style="padding-top:20px"> <p style="font-size:12px;">利用線程實現動態顯示系統時間</p> </div>
這就是如何利用執行緒實現動態顯示系統時間的方法,希望對大家的學習有所幫助。