易语言通过时钟和计次循环来实现定时任务的代码

创建定时任务源码

.版本 2

.支持库 iext

.支持库 eAPI

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

.局部变量 i, 整数型

.计次循环首 (61, i)

.如果真 (i < 25)

时组合框.加入项目 (到文本 (i - 1), )

.如果真结束

分组合框.加入项目 (到文本 (i - 1), )

秒组合框.加入项目 (到文本 (i - 1), )

.计次循环尾 ()

时组合框.现行选中项 = 0

分组合框.现行选中项 = 0

秒组合框.现行选中项 = 0

时钟1.时钟周期 = 1000

.子程序 _按钮_添加任务_被单击

.局部变量 i, 整数型

.局部变量 局_是否重复, 逻辑型

.局部变量 局_索引, 整数型

.计次循环首 (任务超级列表框.取表项数 (), i) ' 过滤设置重复的时间

.如果真 (任务超级列表框.取标题 (i - 1, 0) = 格式化文本 (“%s:%s:%s”, 时组合框.内容, 分组合框.内容, 秒组合框.内容))

局_是否重复 = 真

.如果真结束

.计次循环尾 ()

.如果真 (取反 (局_是否重复))

局_索引 = 任务超级列表框.插入表项 (, , , , , )

任务超级列表框.置标题 (局_索引, 0, 格式化文本 (“%s:%s:%s”, 时组合框.内容, 分组合框.内容, 秒组合框.内容))

.如果真结束

.子程序 _时钟1_周期事件

.局部变量 局_表索引, 整数型

.局部变量 局_设定时间, 文本型, , "0"

.局部变量 局_倒数时间, 整数型

.局部变量 局_当前时, 整数型

.局部变量 局_当前分, 整数型

.局部变量 局_当前秒, 整数型

.局部变量 局_倒数时, 整数型

.局部变量 局_倒数分, 整数型

.局部变量 局_倒数秒, 整数型

局_当前时 = 取小时 (取现行时间 ())

局_当前分 = 取分钟 (取现行时间 ())

局_当前秒 = 取秒 (取现行时间 ())

.计次循环首 (任务超级列表框.取表项数 (), 局_表索引)

.判断开始 (格式化文本 (“%d:%d:%d”, 局_当前时, 局_当前分, 局_当前秒) = 任务超级列表框.取标题 (局_表索引 - 1, 0))

任务超级列表框.置标题 (局_表索引 - 1, 2, “真”)

' -----------------------------以下开始执行定时任务-----------------------------

.判断开始 (局_当前时 = 12 且 局_当前分 = 30)

.判断 (局_当前时 = 19 且 局_当前分 = 30)

.判断 (局_当前时 = 20 且 局_当前分 = 0)

.判断 (局_当前时 = 20 且 局_当前分 = 20)

.判断 (局_当前时 = 21 且 局_当前分 = 0)

.判断 (局_当前时 = 21 且 局_当前分 = 30)

.默认

.判断结束

' -----------------------------以上开始执行定时任务-----------------------------

.默认

局_设定时间 = 分割文本 (任务超级列表框.取标题 (局_表索引 - 1, 0), “:”, )

.如果真 (到整数 (局_设定时间 [1]) < 取小时 (取现行时间 ())) ' 次日时间修正

局_设定时间 [1] = 到文本 (24 + 到整数 (局_设定时间 [1]))

.如果真结束

局_倒数时间 = ((到整数 (局_设定时间 [1]) - 局_当前时) × 60 - 局_当前分 + 到整数 (局_设定时间 [2])) × 60 - 局_当前秒 + 到整数 (局_设定时间 [3]) - 1

.如果真 (局_倒数时间 ≥ 0)

局_倒数时 = 局_倒数时间 ÷ 3600

局_倒数分 = (局_倒数时间 - 局_倒数时 × 3600) ÷ 60

局_倒数秒 = 局_倒数时间 - 局_倒数时 × 3600 - 局_倒数分 × 60

任务超级列表框.置标题 (局_表索引 - 1, 1, 格式化文本 (“%d:%d:%d”, 局_倒数时, 局_倒数分, 局_倒数秒))

.如果真结束

.判断结束

.计次循环尾 ()

.子程序 _任务超级列表框_按下某键, 逻辑型

.参数 键代码, 整数型

.参数 功能键状态, 整数型

.如果真 (键代码 = #Del键)

任务超级列表框.删除表项 (任务超级列表框.现行选中项)

.如果真结束

运行结果:

总结

以上是 易语言通过时钟和计次循环来实现定时任务的代码 的全部内容, 来源链接: utcz.com/z/350910.html

回到顶部