做个简单的番茄时钟工作时用,因为不方便有提示音,构想的是以弹出windows系统通知的方式实现。休息时间就不加入循环了,因为不好把控。实现的效果:点击脚本,开始番茄计时,到点弹出系统提示。休息回来后再手动点击脚本开始新一轮计时

新建.vbs后缀脚本文件:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
Set WshShell = CreateObject("WScript.Shell")

duration = 25

' 将持续时间转换为秒
totalSeconds = duration * 60

' 提示番茄时钟开始
WshShell.Popup "clock start", 1, "clock", 64

' 使用循环模拟计时
startTime = Now
Do While DateDiff("s", startTime, Now) < totalSeconds
    ' 什么也不做,只是等待
Loop

' 提示番茄时钟结束
WshShell.Popup "have a rest", 0, "clock", 64

到点后,弹出提示框: image.png

需要注意的是:vbs直接执行的话,是在后台运行的。

WshShell.Popup参数:

1
WshShell.Popup(prompt[, timeout][, title][, type])
  • prompt: 必需,要显示的消息文本内容。
  • timeout: 可选,消息框显示的时间(以毫秒为单位)。设置为 0 表示不会自动关闭,需要用户手动关闭。默认值为 0。
  • title: 可选,消息框的标题。默认为空字符串。
  • type: 可选,消息框的类型,即图标和按钮的样式。可以是下面其中一个值:
    • vbOKOnly (0):只显示一个“确定”按钮。
    • vbOKCancel (1):显示“确定”和“取消”按钮。
    • vbAbortRetryIgnore (2):显示“中止”、“重试”和“忽略”按钮。
    • vbYesNoCancel (3):显示“是”、“否”和“取消”按钮。
    • vbYesNo (4):显示“是”和“否”按钮。
    • vbRetryCancel (5):显示“重试”和“取消”按钮。
    • vbCritical (16):显示“停止”图标。这是 vbOKOnly(0)的默认值。
    • vbQuestion (32):显示“问题”图标。
    • vbExclamation (48):显示“感叹号”图标。
    • vbInformation (64):显示“信息”图标。
    • vbDefaultButton1 (0):第一个按钮是默认按钮。
    • vbDefaultButton2 (256):第二个按钮是默认按钮。
    • vbDefaultButton3 (512):第三个按钮是默认按钮。
    • vbDefaultButton4 (768):第四个按钮是默认按钮。