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

所属分类: 软件编程 / java 阅读数: 36
收藏 0 赞 0 分享

编写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>

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

更多精彩内容其他人还在看

SpringBoot中使用Ehcache的详细教程

EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的 CacheProvider。这篇文章主要介绍了SpringBoot中使用Ehcache的相关知识,需要的朋友可以参考下
收藏 0 赞 0 分享

在idea 中添加和删除模块Module操作

这篇文章主要介绍了在idea 中添加和删除模块Module操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

java spring整合junit操作(有详细的分析过程)

这篇文章主要介绍了java spring整合junit操作(有详细的分析过程),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解JAVA 弱引用

这篇文章主要介绍了 JAVA 弱引用的相关资料,帮助大家更好的理解和学习java引用对象,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

深入了解JAVA 虚引用

这篇文章主要介绍了JAVA 虚引用的相关资料,帮助大家更好的理解和学习JAVA,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

详解JAVA 强引用

这篇文章主要介绍了JAVA 强引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

java中的按位与(&)用法说明

这篇文章主要介绍了java中的按位与(&)用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

深入了解JAVA 软引用

这篇文章主要介绍了JAVA 软引用的相关资料,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

利用MyBatis实现条件查询的方法汇总

这篇文章主要给大家介绍了关于利用MyBatis实现条件查询的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MyBatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.PathTranslator was bound

这篇文章主要介绍了Intellij IDEA 与maven 版本不符 Unable to import maven project See logs for details: No implementation for org.apache.maven.model.path.Pa
收藏 0 赞 0 分享
查看更多