上班太难熬?想知道还有多久时间下班?分享一段下班倒计时程序(Java版)(#^.^#)
2024-06-05 03:50:37
先看效果
上代码(中文命名纯属好玩)
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;public class 下班 extends JFrame{{try {int hour=17;//时int minute=30;//分int second=0;//秒Dimension screensize = Toolkit.getDefaultToolkit().getScreenSize();int width = (int)screensize.getWidth();this.setBounds(width/2-300,0,580,30);UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");this.setTitle("下班倒计时程序");this.setType(Type.UTILITY);this.setUndecorated(true);this.setOpacity(0.6f);this.setResizable(false);//this.setAlwaysOnTop(true);this.setFocusable(false);this.setDefaultCloseOperation(EXIT_ON_CLOSE); //设置关闭方式 如果不设置的话 似乎关闭窗口之后不会退出程序JPanel jPanel = new JPanel();//得到窗口的容器jPanel.setLayout(null);jPanel.setSize(650,30);JLabel l1 = new JLabel(); //创建一个标签 并设置初始内容l1.setForeground(Color.blue);Font font = new Font(null, Font.BOLD, 30);l1.setFont(font);l1.setBounds(15,0,580,30);JButton b1 = new JButton("×");b1.setBounds(580,0,50,30);b1.addMouseListener(new MouseAdapter() {@Overridepublic void mouseClicked(MouseEvent e) {System.exit(-1);}});jPanel.add(l1);jPanel.add(b1);this.add(jPanel);this.setVisible(true);//设置窗口可见Calendar 日历 = Calendar.getInstance();日历.set(Calendar.HOUR_OF_DAY, hour);日历.set(Calendar.MINUTE, minute);日历.set(Calendar.SECOND, second);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String 下班时间 = sdf.format(日历.getTime());SimpleDateFormat 格式化 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date 下班时间新格式 = 格式化.parse(下班时间);while (true) {Thread.sleep(1000);Date 当前时间 = new Date();long 相差的时间 = (下班时间新格式.getTime() - 当前时间.getTime()) / 1000;if (相差的时间 > 0) {long 时 = 相差的时间 / 60 / 60;long 分 = (相差的时间 - 时 * 60 * 60) / 60;long 秒 = 相差的时间 - 时 * 60 * 60 - 分 * 60;//会打印出相差3秒l1.setText("下班倒计时: " + 时 + "时" + 分 + "分" + 秒 + "秒" + " 共计" + 相差的时间 + "秒");//System.out.println("倒计时:" + 时 + "时" + 分 + "分" + 秒 + "秒。" + "离下班还差" + 相差的时间 + "秒");}else {Runtime.getRuntime().exec("cmd.exe /C start shutdown -s -t 20");break;}}} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) throws IOException {new 下班();//下班自动关机,就放开下面代码
// Runtime.getRuntime().exec("cmd.exe /C start shutdown -s -t 1000");}
}
最新文章
- POJ3692 最大点权独立集元素个数
- 2008世界大学排名(泰晤士报)Top200
- Android面试题(五) --重要
- 项目--教师日常办公平台中的活动图
- 【算法】BitMap
- 数据库并发抢红包_秒杀场景实践之抢红包
- typora设置代码不自动换行
- map 和 hash_map 的使用方法
- HDX(CITRIX ICA)与ICA
- dsoframer.ocx java_dsoframer.ocx(java web 操作word) 总结一下
- python毕业设计作品基于django框架外卖点餐系统毕设成品(7)中期检查报告
- 新趋势下的云计算安全行业前沿认证 | CCSK
- MATLAB 图像识别
- 2016 server win 假死_Windows10出现假死的几种表现形式及对应解决方案
- .net rdlc 自定义函数把数字转换为大写中文
- jbX和finss的一些问题
- [裴礼文数学分析中的典型问题与方法习题参考解答]4.3.26
- 考研:中国科学院地理所历年GIS研究生入学考试真题汇总
- 买计算机硬件配置,买笔记本电脑时如果只看硬件配置,那就大错特错了
- 统计字符串中字符出现次数以及排序
热门文章
- MLCC多层陶瓷电容的直流偏压(静电容量)特性
- chunk-vendors.7142f8da.js:1 Uncaught SyntaxError: Unexpected token ‘<‘
- 记一次java代码连接orcal数据库查视图报 java.sql.SQLSyntaxErrorException: ORA-00942: 表或视图不存在
- 胡说区块链 | what?why?how?where?who?
- Mac OS系统下制作ISO映像教程
- JS中innerHTML,innerText,outHTML的用法及区别
- resultset 转list
- 安装IntelliJIDEA的时候提示NSIS ERROR的解决办法
- npm ERR path C:\Users\H\Desktop\renren-fast-vue\node_modules\node-sass
- 首届昇腾计算产业峰会成功举办,AITISA与华为联合发布“白皮书”