ZBreak
https://github.com/atskyline/ZBreak
最近用电脑用的多,总觉得有必要2个小时休息一会。就花了一点点时间写了这个小东西
如果连续使用电脑超过2个小时会弹出一个窗口提示。

点 “休息好了” 会重置定时器
点 “再干十分钟” 会过10分钟再提醒
关于连续使用电脑的判定依据是,每分钟截图一次。然后选取1000个点,取像素值和上一次截图对比。有超过2%的像素不同,就认为有人在使用电脑。
这样可以认定观看视频的时候也是在使用电脑的。
具体的几个相关的参数,暂时懒得写道配置文件中,有兴趣的话,可以直接改代码里那几个常量就好了。
PS:其实多年后又回来拖控件感觉还不错
ChangeLog
1.0.1
- 将默认的Target Framework4.5改成2.0
- 点击“再干十分钟”,的时间修改从点击按钮算起10分钟
- 将基本工作时间由2个小时调整为1个小时
- 引入最小休息时间概念,每次休息至少TimerInterval × MinBreakCount 毫秒(为了排除掉去上个厕所就被认为是休息的情况)
- 在托盘提示中显示已经连续工作的时间
- 修复了一个由于锁屏状态会崩溃的bug。
- 修复了连续工作时间显示的BUG
ZBreak的更多相关文章
随机推荐
- SYN, FIN, ACK, PSH, RST, URG
在TCP层,有个FLAGS字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG. 其中,对于我们日常的分析有用的就是前面的五个字段. 它们的含义是: SYN表示建立连 ...
- svn团队环境
1.安装VisualSVN Server VisualSVN-Server-3.3.1-x64.msi 下载,并安装标准版(免费) 2.下载TortoiseSVN TortoiseSVN-1.8.11 ...
- Linux安装oracle 10g常见问题之——OUI-25031
OUI-25031:Some of the configuration assistants failed/cancelled. 这是安装过程中常见的错误之一. 引起此错误的原因:/etc/hosts ...
- oracle中的dual表详解
oracle中的dual表详解 1.DUAL表的用途 Dual 是 Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中 --查看当前连接用户 SQL> s ...
- Homework3
1. 切换路径到想要保存的目录下,使用git init创建仓库: 2. 在仓库下创建文件Readme.txt,使用git add命令添加到暂存区和 git commit 命令提交到仓库: 3. 修改 ...
- iOS工程中的info.plist文件
我们建立一个工程后,会在Supporting files下面看到一个"工程名-Info.plist"的文件,这个是对工程做一些运行期配置的文件,很重要,不能删除. 如果你在网上下载 ...
- tableView中不易被注意到的方法
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ } 这个方法 在 r ...
- 解决position:relative情况下,z-index无效的方法
在实际开发中,div+css经常会碰到层级的问题 其中有个很头痛的就是z-index控制层级时,老是发现z-index不起作用 老杨依据自己的经验,总结出以下步骤: 1.判断被覆盖的层(想要置顶的层) ...
- (转)基于即时通信和LBS技术的位置感知服务(三):搭建Openfire服务器+测试2款IM客户端
主要包含4个章节: 1. Java 领域的即时通信的解决方案 2. 搭建 Openfire 服务器 3. 使用客户端测试我们搭建的 Openfire 服务器 4. Smack 和 ASmack 一.J ...
- 镜面电火花EDM加工技术资料,模具行业的人应该好好看看!
目前镜面电火花加工技术在精密型腔模具制造中逐步得以推广.本文就企业中镜面电火花加工应用的关键环节,结合实践分析了影响镜面加工性能的因素.通过控制各个工艺环节,可有效实现高质量.高效率的镜面电火花加工. ...