易语言定时.倒计时求助
本帖最后由 jiucaionly 于 2021-10-7 08:41 编辑请教下大佬们,先用易语言写个程序,两个按钮;
点击按钮1后,必须等5分钟后才能点击执行按钮2(时间未到5分钟,按钮2无法点击(点击了了也不执行按钮2里面写的的程序))并需要在界面显示出点击按钮1后5分钟倒计时,这个怎么写啊?
谢谢大佬们了! 本帖最后由 Jack2002 于 2021-10-7 01:27 编辑
1、拖两按钮(button)、一时钟(Timer)、一静态文本(Label)到主窗口,
2、窗口Create事件中EnableWindow(按钮二句柄, FALSE),
3、时钟设为1秒执行一次,
5、时钟事件内累加计数,同时更新到Label显示,
6、累加到5分钟就EnableWindow(按钮二句柄, TRUE),使按钮可点击,易语言好像是 按钮1.什么来着 = 假? .版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 计次, 整数型
.程序集变量 时间, 整数型
.子程序 __启动窗口_创建完毕
时间 = 5
.子程序 _按钮1_被单击
.如果 (时钟1.时钟周期 = 0)
计次 = 1
时钟1.时钟周期 = 1000
.否则
时钟1.时钟周期 = 0
按钮1.标题 = “按钮”
.如果结束
.子程序 _时钟1_周期事件
.如果 (计次 ≥ 时间)
按钮2.禁止 = 假
按钮2.标题 = “按钮”
.否则
计次 = 计次 + 1
按钮2.标题 = 到文本 (时间 - 计次)
.如果结束
Jack2002 发表于 2021-10-7 01:23
1、拖两按钮(button)、一时钟(Timer)、一静态文本(Label)到主窗口,
2、窗口Create事件中EnableWindow(按 ...
补充1点
7、按钮一Click事件中启动时钟 按钮1点击事件中写上按钮2禁止=真,建2个全局变量来存5分钟以及已经过了多久,时钟周期设置为1000,时钟周期事件中写上记录已过时间的那个变量自增,直到等于5结束按钮2禁止=假,时钟周期再写上标签的标题等于两个变量相减这个是剩余时间。 RainH 发表于 2021-10-7 01:37
.版本 2
.程序集 窗口程序集_启动窗口
大佬,这个程序5秒钟到时了,按钮2开始执行,但是按钮2下的代码会执行无数次,怎么能只有点击按钮2才能执行按钮2的代码谢谢 .版本 2
.支持库 EThread
.支持库 spec
.子程序 _按钮1_被单击
启动线程 (&子程序1, , )
.子程序 子程序1
.局部变量 i, 整数型
连续赋值 (真, 按钮1.禁止, 按钮2.禁止)
.计次循环首 (5 × 60, i)
标签1.标题 = “剩余时间:” + 到文本 (5 × 60 - i + 1)
延迟 (1000)
.计次循环尾 ()
标签1.标题 = “剩余时间:” + 到文本 (5 × 60 - i + 1)
连续赋值 (假, 按钮1.禁止, 按钮2.禁止)
.子程序 _按钮2_被单击
信息框 (“OK”, 0, , )
上传不了文件
建议学学基础,这些都是基础性的东西 .版本 2
.支持库 spec
.子程序 _按钮1_被单击
.局部变量 N, 整数型
按钮2.禁止 = 真' 禁止点击按钮2,可以避免误点按钮2
.计次循环首 (到整数 (编辑框倒计时分钟.内容) × 60, N)' 编辑框倒计时分钟.内容,输入方式为整数,也是说的5分钟的整数5,乘以60是分钟转秒数
标签倒计时.标题 = “倒计时:” + 到文本 (到整数 (编辑框倒计时分钟.内容) × 60 - N)' 比如设定1分钟的话,是从59到0进行倒计时,刚好60秒,5分钟同样同理,时间紧凑严谨!
延迟 (1000)' 缓冲,以秒间隔输出
.如果真 (到整数 (编辑框倒计时分钟.内容) × 60 - N = 0)' 设定判断,如果倒计时为0,倒计时结束,执行如果真内容
按钮2.禁止 = 假' 恢复按钮2可以点击
标签倒计时.标题 = “倒计时已完毕,可以点击按钮2”
' _按钮2_被单击 ()‘这里也可以设置,倒计时结束后,自动执行按钮2的指令,如果需要的就解除屏蔽即可
.如果真结束
.计次循环尾 ()
.子程序 _按钮2_被单击
标签倒计时.标题 = “开始执行按钮2的命令”' 提示输出
' 这里下面写你按钮2需要执行的命令
页:
[1]
2