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的更多相关文章

随机推荐

  1. SYN, FIN, ACK, PSH, RST, URG

    在TCP层,有个FLAGS字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG. 其中,对于我们日常的分析有用的就是前面的五个字段. 它们的含义是: SYN表示建立连 ...

  2. svn团队环境

    1.安装VisualSVN Server VisualSVN-Server-3.3.1-x64.msi 下载,并安装标准版(免费) 2.下载TortoiseSVN TortoiseSVN-1.8.11 ...

  3. Linux安装oracle 10g常见问题之——OUI-25031

    OUI-25031:Some of the configuration assistants failed/cancelled. 这是安装过程中常见的错误之一. 引起此错误的原因:/etc/hosts ...

  4. oracle中的dual表详解

    oracle中的dual表详解 1.DUAL表的用途 Dual 是 Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中 --查看当前连接用户 SQL> s ...

  5. Homework3

    1. 切换路径到想要保存的目录下,使用git init创建仓库: 2. 在仓库下创建文件Readme.txt,使用git add命令添加到暂存区和 git commit 命令提交到仓库: 3.  修改 ...

  6. iOS工程中的info.plist文件

    我们建立一个工程后,会在Supporting files下面看到一个"工程名-Info.plist"的文件,这个是对工程做一些运行期配置的文件,很重要,不能删除. 如果你在网上下载 ...

  7. tableView中不易被注意到的方法

    - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ } 这个方法 在 r ...

  8. 解决position:relative情况下,z-index无效的方法

    在实际开发中,div+css经常会碰到层级的问题 其中有个很头痛的就是z-index控制层级时,老是发现z-index不起作用 老杨依据自己的经验,总结出以下步骤: 1.判断被覆盖的层(想要置顶的层) ...

  9. (转)基于即时通信和LBS技术的位置感知服务(三):搭建Openfire服务器+测试2款IM客户端

    主要包含4个章节: 1. Java 领域的即时通信的解决方案 2. 搭建 Openfire 服务器 3. 使用客户端测试我们搭建的 Openfire 服务器 4. Smack 和 ASmack 一.J ...

  10. 镜面电火花EDM加工技术资料,模具行业的人应该好好看看!

    目前镜面电火花加工技术在精密型腔模具制造中逐步得以推广.本文就企业中镜面电火花加工应用的关键环节,结合实践分析了影响镜面加工性能的因素.通过控制各个工艺环节,可有效实现高质量.高效率的镜面电火花加工. ...