首页 > 编程 > Java > 正文

利用线程实现动态显示系统时间

2019-11-26 14:55:48
字体:
来源:转载
供稿:网友

编写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 class="html" 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>

这就是如何利用线程实现动态显示系统时间的方法,希望对大家的学习有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表