关于时钟的Java实现一共两篇,相比较上篇,这次的比较简单,因为只是动态的显示数字时间,而不需要秒针、分针、时针和时钟的绘制以及动作设置。
上一篇在这 带指针的时钟
代码
import javax.swing.*; import java.awt.*; import java.util.Date; public class Time extends JFrame implements Runnable { private Thread clock; public Time(){ super("时钟");//时钟标题 this.setFont(new Font("Times New Roman",Font.BOLD,60));//设置时钟字体 this.go();//开始运行 this.setSize(280,100); //设置时钟大小 this.setVisible(true);//设置窗口可见 } @Override public void run() { while (true){ repaint(); try { Thread.sleep(1000);//1s更新1次 } catch (InterruptedException e) { e.printStackTrace(); } } } //初始化时钟 public void go(){ if (clock == null){ clock = new Thread(this); clock.start(); } } //绘制时钟上的时间 @Override public void paint(Graphics g) { String s = ""; Date now = new Date(); System.out.println(now); s = now.toString().substring(11,19); g.setColor(Color.WHITE); Dimension dimension = getSize(); g.fillRect(0,0,dimension.width,dimension.height);//时钟背景 g.setColor(Color.red);//时钟字体 g.drawString(s,20,80); } public static void main(String[] args) { Time time = new Time();//初始化对象 time.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭后程序也停止 } }
效果