以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  代码检查  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176548)

--  作者:lisangyu
--  发布时间:2022/4/17 21:15:00
--  代码检查
蓝总:
timertick代码:
Dim t1 As Date = Vars("Time")
Dim t2 As Date = Date.Now
Dim t As TimeSpan = t2 - t1
Dim str,str1,str2 As String
str1 = TimeSerial(t.Hours,t.Minutes,t.Seconds)
str2 = TimeSerial(01-t.Hours,00-t.Minutes,00-t.Seconds)
str = "考试时间60分钟" & Chr(13) & Chr(10) & "已用时间 " & str1.SubString(2) & Chr(13)
e.Form.Controls("Label3").text = str & Chr(10) & "剩余时间 " & str2.SubString(2)

If str2.SubString(2) = ":00:00"  Then
    e.Form.Controls("CheckBox1").Checked = False
    e.Form.Controls("CheckBox2").Checked = False
    e.Form.Controls("CheckBox3").Checked = False
    e.Form.Controls("CheckBox4").Checked = False
....
end if
60分钟用完就自动终止,为什么我刚启动,就提示已经用完60分钟,直接执行后面的if语句,有时又能够正常的自动跳动时间


--  作者:有点蓝
--  发布时间:2022/4/17 21:38:00
--  
Vars("Time")的初始值是什么?

msgbox(Vars("Time"))

--  作者:lisangyu
--  发布时间:2022/4/17 23:29:00
--  
把代码改成
str2 = "00:00:00" 好像可以。

Vars("time") =date.now 放在 开始按钮(e.Form.TimerEnabled = True),用于启动计时器。

之前直接终止,是不是因为出现“1:00:00” 这种情况,一楼 的问题是在win10笔记本上测试出来的,单位win7确没遇到过,这是为什么?
[此贴子已经被作者于2022/4/18 8:05:15编辑过]

--  作者:有点蓝
--  发布时间:2022/4/18 8:35:00
--  
使用日志记录一下,有问题的时候,各个变量的值都是什么?

日志用法参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=173590