以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 窗口倒计时代码请教 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=154151) |
-- 作者:昱飞哥 -- 发布时间:2020/9/5 11:08:00 -- 窗口倒计时代码请教 老师,请教一下: 我想把今日的倒计时、本月的倒计时、本年的倒计时分别显示在label2、label3、label4中,于是在窗口的timertick事件中写下如下代码: Dim d As Date = Date.Today \'获取今日的日期 Dim dt As Date = #d 24:00:00# \'获取今日24时整的日期与时间 Dim t As TimeSpan = dt - Date.Now \'计算现在离今天的24时整还差多少时间 e.Form.Controls("Label3").Text = "剩余" & t.Days & "天" & t.Hours & "小时" & t.Minutes & "分" & t.Seconds & "秒" \'上述代码是计算离今天结束还剩多少时间 Dim y1 As Integer = Date.Today.Year Dim m1 As Integer = Date.Today.Month Dim d1 As New Date(y1, m1, Date.DaysInMonth(y1, m1)) \'获取本月的最后一天 Dim dt1 As Date = #d1 24:00:00# \'获取今日24时整的日期与时间 Dim t1 As TimeSpan = dt1 - Date.Now \'计算现在离本月最后一天的24时整还差多少时间 e.Form.Controls("Label3").Text = "剩余" & t1.Days & "天" & t1.Hours & "小时" & t1.Minutes & "分" & t1.Seconds & "秒" \'上述代码是计算离本月结束还剩多少时间 Dim d2 As New Date(y1, 12, 31) \'获取今年的最后一天 Dim dt2 As Date = #d2 24:00:00# \'获取今日24时整的日期与时间 Dim t2 As TimeSpan = dt2 - Date.Now \'计算现在离今年的最后一天的24时整还差多少时间 e.Form.Controls("Label3").Text = "剩余" & t1.Days & "天" & t1.Hours & "小时" & t1.Minutes & "分" & t1.Seconds & "秒" \'上述代码是计算离今年结束还剩多少时间 红色的这几句错了,不知道怎么写,望指点 |
-- 作者:有点蓝 -- 发布时间:2020/9/5 11:22:00 -- Dim dt As Date = format(d,"yyyy-MM-dd 24:00:00") \'获取今日24时整的日期与时间 |
-- 作者:昱飞哥 -- 发布时间:2020/9/5 11:32:00 -- 谢谢蓝老师 |
-- 作者:昱飞哥 -- 发布时间:2020/9/5 11:40:00 -- 报错: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:窗口,倒计时,TimerTick 详细错误信息: 从字符串“2020-09-05 24:00:00”到类型“Date”的转换无效。 老师,这是啥情况
|
-- 作者:有点蓝 -- 发布时间:2020/9/5 13:41:00 -- 0点吧,时间值没有24点。 如果是最后一秒。应该是Dim dt As Date = format(d,"yyyy-MM-dd 23:59:59"),或者使用第2天的0点进行计算
|
-- 作者:昱飞哥 -- 发布时间:2020/9/5 14:11:00 -- 是的,修改之后可以了,谢谢老师 |