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

所属分类: 软件编程 / java 阅读数: 84
收藏 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>

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

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

Java实现一个简单的文件上传案例示例代码

这篇文章主要介绍了Java实现一个简单的文件上传案例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解在spring中使用JdbcTemplate操作数据库的几种方式

这篇文章主要介绍了详解在spring中使用JdbcTemplate操作数据库的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

java中的switch case语句使用详解

这篇文章主要介绍了java中的switch case语句使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

深入理解Java 线程池

这篇文章主要介绍了Java 线程池的相关资料,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

详解mybatis #{}和${}的区别、传参、基本语法

这篇文章主要介绍了mybatis #{}和${}的区别、传参、基本语法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

MyBatis 中 ${}和 #{}的正确使用方法(千万不要乱用)

这篇文章主要介绍了MyBatis 中 ${}和 #{}的正确使用方法,本文给大家提到了MyBatis 中 ${}和 #{}的区别,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解Mybatis中的 ${} 和 #{}区别与用法

这篇文章主要介绍了Mybatis中的 ${} 和 #{}区别与用法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Maven安装过程图文详解

这篇文章主要介绍了Maven安装过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

SpringBoot登录拦截配置详解(实测可用)

这篇文章主要介绍了SpringBoot登录拦截配置详解(实测可用),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

JAVA 内存溢出案例汇总

这篇文章主要介绍了JAVA 内存溢出案例的汇总,文中讲解非常细致,帮助各位工作学习时避免内存溢出,感兴趣的朋友可以了解下
收藏 0 赞 0 分享
查看更多