您的位置:首页 > 编程语言 > Java开发

Java 程序设计 利用线程实现动态显示系统时间

2012-04-17 19:37 495 查看
/** 作者:wwj 日期:2012/4/17 程序要求:编写Applet小程序,通过在HTML文档中接收参数, 用不同颜色、字体显示当前的系统时间, 源程序保存为clock.java,HTML文件保存为clock.html **/ importjava.awt.*; importjava.applet.Applet; importjava.util.*; importjava.awt.Graphics; publicclassclockextendsAppletimplementsRunnable //继承Applet类并实现Runnable接口 { ThreadclockThread=null; //创建一个空线程 Calendarnow; privateStrings1; privateintsize; intr1,g1,b1; publicvoidinit() //初始化方法 { size=Integer.parseInt(getParameter("size"));//获得字体大小 } publicvoidstart() { if(clockThread==null) { clockThread=newThread(this,"Clock2"); //创建线程对象clockThread clockThread.start(); //开始执行线程 } } publicvoidrun() //实现Runnable接口的run()方法 { ThreadmyThread=Thread.currentThread();//创建线程对象myThread while(clockThread==myThread) { repaint(); //通过repaint方法调用paint方法 try { Thread.sleep(1000); //休眠1秒 } catch(InterruptedExceptione){} } } publicvoidpaint(Graphicsg) { r1=(int)(Math.random()*255); //通过调用Math类的random产生随机数 g1=(int)(Math.random()*255); //再通过随机数分别设置三原色,红绿蓝 b1=(int)(Math.random()*255); Colorc=newColor(r1,g1,b1); //创建一个颜色对象 g.setColor(c); //设置颜色 now=Calendar.getInstance();//获得系统当前时间 s1=now.get(now.HOUR)+"时" +now.get(now.MINUTE)+"分" +now.get(now.SECOND)+"秒"; Fontf=newFont("",1,size); //设置字体 g.setFont(f); g.drawString(s1,10,50); //显示指定大小颜色的字符串 } publicvoidstop() //调用stop方法,停止线程 { clockThread=null; } }<html>
<Appletcode="clock.class"width=300height=100>
<paramname=s1value=s1>
<paramname=sizevalue=30>
</Applet>
</html>




                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: