Java编程小实例—数字时钟的实现代码示例
本文的实例是Java编程实现一个数字时钟,代码测试可用,练练手吧。代码如下:
package me.socketthread; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.util.Calendar; import java.util.GregorianCalendar; import javax.swing.JFrame; //数字时钟 public class ClockDemo extends JFrame implements Runnable{ Thread clock; public ClockDemo(){ super("数字时钟"); //调用父类构造函数 setFont(new Font("Times New Roman",Font.BOLD,60)); //设置时钟的显示字体 start(); //开始进程 setSize(280,100); //设置窗口尺寸 setVisible(true); //窗口可视 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序 } public void start(){ //开始进程 if (clock==null){ //如果进程为空值 clock=new Thread(this); //实例化进程 clock.start(); //开始进程 } } public void run(){ //运行进程 while (clock!=null){ repaint(); //调用paint方法重绘界面 try{ Thread.sleep(1000); //线程暂停一秒(1000毫秒) } catch (InterruptedException ex){ ex.printStackTrace(); //输出出错信息 } } } public void stop(){ //停止进程 clock=null; } public void paint(Graphics g){ //重载组件的paint方法 Graphics2D g2=(Graphics2D)g; //得到Graphics2D对象 Calendar now=new GregorianCalendar(); //实例化日历对象 String timeInfo=""; //输出信息 int hour=now.get(Calendar.HOUR_OF_DAY); //得到小时数 int minute=now.get(Calendar.MINUTE); //得到分数 int second=now.get(Calendar.SECOND); //得到秒数 if (hour<=9) timeInfo+="0"+hour+":"; //格式化输出 else timeInfo+=hour+":"; if (minute<=9) timeInfo+="0"+minute+":"; else timeInfo+=minute+":"; if (second<=9) timeInfo+="0"+second; else timeInfo+=second; g.setColor(Color.white); //设置当前颜色为白色 Dimension dim=getSize(); //得到窗口尺寸 g.fillRect(0,0,dim.width,dim.height); //填充背景色为白色 g.setColor(Color.orange); //设置当前颜色为橙色 g.drawString(timeInfo,20,80); //显示时间字符串 } public static void main(String[] args){ new ClockDemo(); } }
测试结果就不展示了,do more exercise!行动起来!
总结
以上就是本文关于Java编程小实例—数字时钟的实现代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Java编程实现从尾到头打印链表代码实例、Java编程获取文本框的内容实例解析、Java语言中cas指令的无锁编程实现实例等,有什么问题可以随时留言,欢迎大家交流讨论。感谢朋友们对本站的支持!
您可能感兴趣的文章
- 01-10Java咖啡馆(1)——叹咖啡
- 01-10Java Socket编程(三) 服务器Sockets
- 01-10Java进阶:Struts多模块的技巧
- 01-10Java Socket编程(一) Socket传输模式
- 01-10Java Socket编程(二) Java面向连接的类
- 01-10Java运行时多态性的实现
- 01-10Java经验点滴:处理没有被捕获的异常
- 01-10Java Socket编程(四) 重复和并发服务器
- 01-10Java中的浮点数分析
- 01-10面向对象编程:Java中的抽象数据类型
阅读排行
本栏相关
- 01-10Java咖啡馆(1)——叹咖啡
- 01-10JVM的垃圾回收机制详解和调优
- 01-10Java Socket编程(三) 服务器Sockets
- 01-10Java进阶:Struts多模块的技巧
- 01-10J2SE 1.5版本的新特性一览
- 01-10Java Socket编程(一) Socket传输模式
- 01-10Java运行时多态性的实现
- 01-10Java Socket编程(二) Java面向连接的类
- 01-10Java Socket编程(四) 重复和并发服务
- 01-10Java经验点滴:处理没有被捕获的异常
随机阅读
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法实例总结
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-11ajax实现页面的局部加载
- 01-10SublimeText编译C开发环境设置