如下图所示,时刻提醒自己还有多久放假。
package com.li;
import javax.swing.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class main {
/**
* {
* ?????GUI???????????
* ???????????????
*/
private static void createAndShowGUI() throws ParseException {
// ???????????
JFrame.setDefaultLookAndFeelDecorated(true);
// ???????
JFrame frame = new JFrame("small tool");
frame.setSize(200, 80);
frame.setAlwaysOnTop(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// ?? "Hello World" ??
JPanel panel = new JPanel();
JLabel label = new JLabel("过年倒计时:");
JLabel label2 = new JLabel("100天20小时5分钟");
panel.add(label);
panel.add(label2);
SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date newYear = sdf.parse("2023-01-21 00:00:00");
new Thread(() -> {
while (true) {
Date today = new Date();
long E_S = newYear.getTime()-today.getTime();
long interval =E_S/(24*60*60*1000);
long hour = (E_S%(24*60*60*1000))/(60*60*1000);
long minute = E_S%(60*60*1000)/(60*1000);
long seconds = E_S%(60*1000)/1000;
label2.setText(""+interval+"天 "+hour+"小时 "+minute+"分钟 "+seconds+"秒");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
frame.add(panel);
frame.setVisible(true);
}
public static void main(String[] args) {
// ???? GUI
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
createAndShowGUI();
} catch (ParseException e) {
e.printStackTrace();
}
}
});
}
}