利用VBScript写一个定时任务弹窗-提醒休息或喝水

图片描述

做为一个程序员,在学习或工做的过程当中要长时间地面对电脑,常常会出现忘记休息或喝水的时候,有时候一坐就是好几个小时。html

这对于身体健康是很是不利的,我之前也不是很在乎,通常就是口渴了才喝水。直到最近这几天感受到喉咙有点不舒服,多是发炎了,我才意识到这是身体内部发出的抗议信号。git

实际上,当你感受到口渴的时候,你的身体实际上是很是缺水了。因此,咱们应该有规律地喝水,通常隔段时间就喝下。程序员

闹钟 or 倒计时

但是对于不少人来讲,要大脑自动条件反射来喝水是很难实现的。所以咱们要经过外部手段来提醒咱们。github

提醒的方式有不少,好比设置几个闹钟,或者是倒计时。惋惜这种利用手机的方式也存在一个弊端,有时候太专一于工做而没有时间看手机的话,那么闹钟和倒计时也无效了。编程

利用脚本写提醒工具

所以,为了更好地解决上面的问题,咱们能够从本质出发,通常来讲,程序员一天工做时面对电脑的时间较多,那么咱们能够在电脑上面写一个定时任务。工具

个人作法是在Windows系统上面写VBScript脚本,每隔一段时间就弹窗,提醒我喝水。oop

具体实现

本文主要介绍怎么在Windows系统下用VBScript写一个简易的定时任务弹窗。学习

若是是Macbook,能够用AppleScriptLinux系统能够用Shellspa

什么是VBScript

VBScript是微软开发的一门脚本语言,使用VBScript,能够在Windows系统下编写自动任务等等。
VBScript文件以.vbs为后缀,Windows系统下能够直接双击运行,代码由C:\Windows\System32下面的wscript.exe负责解释执行。code

VBScript教程

我在写这个弹窗小工具以前,没有系统学习过VBScript,现学现用,只是粗略学习了一下,若是想系统了解的,能够看一下菜鸟教程

用到的VBScript知识

这个小工具其实很简单,核心就几行代码,相似网页中的setInterval,而后时间一到就alert

下面具体介绍代码中用到的VBScript知识。

  1. Dim variableName: 定义变量
  2. Do ... Loop: 循环,相似do ... while(true)
  3. If ... Then ... Else ... End If: 条件结构
  4. InputBox: 相似网页中的window.propmt
  5. MsgBox: 相似网页中的window.alert

详细代码

如下贴出该工具的所有代码。

Dim interval
Dim ret

' set task's interval
Do
  interval = InputBox("Please input the interval:", "Interval(seconds)", 30 * 60 * 1000)

  If interval = vbEmpty Then
    ' click cancel
    MsgBox "You input empty, interval is set default half an hour."
    interval = 1800000
    Exit Do
  End If

  If Not IsNumeric(interval) Then
    ' input what is't a numeric
     MsgBox "Please input number"
   Else
     Exit Do
  End If
Loop

' execute interval task
Do
  ret = MsgBox("Drink some water", vbOKCancel, "Time up")
  If ret = 1 Then
    Wscript.sleep interval
  Else
    MsgBox "Close notification", vbOkOnly, "Close notification"
    Exit Do
  End If
Loop

总结

有时候发现编程可以用在日常的生活中,仍是挺有趣的。

最后附上项目的 Github地址,欢迎 Star或Fork支持,谢谢。
相关文章
相关标签/搜索