以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  秒转换为时间  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49360)

--  作者:qianqian1530
--  发布时间:2014/4/16 19:32:00
--  秒转换为时间
 比方说    3600秒 等于  01:00:00   

有没有直接能转换的 函数呢? 或者代码

--  作者:有点甜
--  发布时间:2014/4/16 19:35:00
--  

 木有直接的函数,需要拼接

 

时:时间 \\ 3600

 

分:(时间 mod 3600) \\ 60

 

秒:时间 mod 60


--  作者:qianqian1530
--  发布时间:2014/4/16 19:44:00
--  
Dim N As Integer = 3600

Dim hour As Integer = N / 3600
Dim minute As Integer = ( N - ( hour * 3600 ) ) / 60
Dim second As Integer = N - ( hour * 3600 + minute * 60 )

e.Form.Controls("Label1").text = Format(#hour:minute:second#, "hh:mm:ss")

这里面 要怎么写啊?

--  作者:有点甜
--  发布时间:2014/4/16 19:49:00
--  
Dim N As Integer = 3600

Dim hour As Integer = N \\ 3600
Dim minute As Integer = (N mod 3600) \\ 60
Dim second As Integer = N mod 360

e.Form.Controls("Label1").text = Format(new date(1,1,1,hour,minute,second), "hh:mm:ss")

--  作者:qianqian1530
--  发布时间:2014/4/16 20:05:00
--  回复:(有点甜)Dim N As Integer = 3600Dim hou...
Dim second1 As Integer = Date.Now.Second
If Vars("OldSecond") <> second1 Then
    Vars("OldSecond") = second1
    Dim N As Integer = e.Form.Controls("Label2").Text - 1
    Dim hour As Integer = N \\ 3600
    Dim minute As Integer = (N Mod 3600) \\ 60
    Dim second As Integer = N Mod 360
    e.Form.Controls("Label1").text = Format(new Date(1,1,1,hour,minute,second), "hh:mm:ss")
    If e.Form.Controls("Label2").Text <= 0 Then
        e.Form.TimerEnabled = False
        msgbox("倒计时结束")
    End If
End If



为啥 我这么些 不对呢?   
  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:desktop.zip


[此贴子已经被作者于2014-4-16 20:10:18编辑过]

--  作者:有点甜
--  发布时间:2014/4/16 20:24:00
--  

 你的例子里没有Label2,你要加入这个Label2,而且设置它的起始值,代码

 

Dim second1 As Integer = Date.Now.Second
If Vars("OldSecond") <> second1 Then
    Vars("OldSecond") = second1
    Dim N As Integer = e.Form.Controls("Label2").Text - 1
    Dim hour As Integer = N \\ 3600
    Dim minute As Integer = (N Mod 3600) \\ 60
    Dim second As Integer = N Mod 60
    e.Form.Controls("Label1").text = Format(new Date(1,1,1,hour,minute,second), "HH:mm:ss")
    e.Form.Controls("Label2").Text -= 1
    If e.Form.Controls("Label2").Text <= 0 Then
        e.Form.TimerEnabled = False
        msgbox("倒计时结束")
    End If
End If


--  作者:qianqian1530
--  发布时间:2014/4/16 20:33:00
--  
3q~图片点击可在新窗口打开查看图片点击可在新窗口打开查看