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. InnoDB外键使用小结

    USE `wfc_database`; # 主表(也可以称作:被参照表.referenced table.outTable) ALTER TABLE `app` ENGINE=INNODB; # 从表 ...

  2. (转)《深入理解java虚拟机》学习笔记5——Java Class类文件结构

    Java语言从诞生之时就宣称一次编写,到处运行的跨平台特性,其实现原理是源码文件并没有直接编译成机器指令,而是编译成Java虚拟机可以识别和运行的字节码文件(Class类文件,*.class),字节码 ...

  3. MenuItem

    private void 文件ToolStripMenuItem_Click(object sender, EventArgs e) { MessageBox.Show("打开测试" ...

  4. EXTJS 3.0 资料 控件之 itemselector 用法

    var dsform = new Ext.data.ArrayStore({ data: [[123, 'One Hundred Twenty Three'], ['1', '今天星期一'], ['2 ...

  5. EntityFramework.Extended

    记录 Entity Framework扩展,可以实现批量更新.删除,但需要EntityFramework6.0支持,需要支持低版本的EF,可下载该扩展的低版本. https://www.nuget.o ...

  6. 使用Yeoman搭建 AngularJS 应用 (10) —— 让我们搭建一个网页应用

    原文地址:http://yeoman.io/codelab/write-unit-tests.html 对于不熟悉的Karma的人来说,这是JavaScript测试框架,这个Angular的生成器包含 ...

  7. XCODE7新变化之-test

    Xcode 7新鲜出炉,一大早下载下来就安装上了,急急地体验一把.这几天公司给的任务是单元测试,那我们一起来用新版本做一次测试吧. 除了官方发布的下载链接地址,分享本人的xcode 7下载地址,大家不 ...

  8. linux上很方便的上传下载文件工具rz和sz

    linux上很方便的上传下载文件工具rz和sz(本文适合linux入门的朋友) ##########################################################&l ...

  9. [JavaScript] js 判断闰年

    /** * 判断闰年函数 * @param {number} year 要判断的年份 * @return {bool} 返回布尔值 * * 其实只要满足下面几个条件即可. * 1.普通年能被4整除且不 ...

  10. uva 1377

    比较不错的一个题,关键是理解状态转移 #include<algorithm> #include<cstdio> #include<cstring> #include ...