package LLL;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.Timer;
public class NowTime extends JFrame {
// 添加 显示时间的JLabel
public NowTime() {
JLabel time = new JLabel();
add(time);
this.setTimer(time);
} // 设置Timer
// 1000ms实现一次动作
private void setTimer(JLabel time) {
final JLabel varTime = time;
Timer timeAction = new Timer(1000, new ActionListener() {
long timemillis2 = (System.currentTimeMillis()-1000);
public void actionPerformed(ActionEvent e) {
long timemillis1 = System.currentTimeMillis();
long timemillis = timemillis1-timemillis2;
// 转换日期显示格式
SimpleDateFormat df = new SimpleDateFormat("mm:ss");
varTime.setText(df.format(new Date(timemillis)));
}
});
timeAction.start();
} // 运行方法
public static void main(String[] args) {
NowTime timeFrame = new NowTime();
timeFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
timeFrame.setSize(160, 80);
timeFrame.setVisible(true);
}
}
通过修改setTimer中的逻辑 可以实现 获取系统当前动态时间,也可以正计时,倒计时。
1、获取系统当前时间
long timemillis = System.currentTimeMillis();
2、倒计时
long timemillis1 = System.currentTimeMillis();
public void actionPerformed(ActionEvent e) {
long timemillis2 = (System.currentTimeMillis()-1000);