重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
vb中返回当前系统毫秒数的函数是Timer。
10余年的金乡网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。网络营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整金乡建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“金乡网站设计”,“金乡网站推广”以来,每个客户项目都认真落实执行。
Timer 函数,返回一个 Single,代表从午夜开始到现在经过的秒数。
语法:
Timer
说明:Microsoft Windows中,Timer函数返回一秒的小数部分。
Timer 函数示例:
本示例使用 Timer 函数来暂停应用程序。同时用 DoEvents
在暂停期间将控制让给其他进程。
Dim PauseTime, Start, Finish, TotalTime
If (MsgBox("Press Yes to pause for 5 seconds", 4)) = vbYes Then
PauseTime = 5 ' 设置暂停时间。
Start = Timer ' 设置开始暂停的时刻。
Do While Timer Start + PauseTime
DoEvents ' 将控制让给其他程序。
Loop
Finish = Timer ' 设置结束时刻。
TotalTime = Finish - Start ' 计算总时间。
MsgBox "Paused for " TotalTime " seconds"
Else
End
End If
elapsed.Milliseconds 获取毫秒。
每100毫秒,do中的代码执行一次,执行时间将大于100毫秒,这是产生误差的地方之一。invoke执行一个方法txt,必须等txt里面的代码运行完毕,方法才能返回,期间占用的时间全是“误差”。
无限循环,且没有退出机制,停不下来。
dim a1 as timespan = dtEndTime -dtStartTime
dim a2 as integer = a1.TotalMilliseconds
不需要控件就可以,用多线程的方式实现,在窗体上放一个Label和一个button按钮,代码如下:
Imports System.Threading
Public Class Form1
Dim Start As Double
Dim td As Thread
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Text = "00:00:00 000"
Button1.Text = "开始"
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Button1.Text = "开始" Then
Button1.Text = "结束"
Start = DateAndTime.Timer
td = New Thread(AddressOf fun1)
td.Start()
Else
Button1.Text = "开始"
td.Abort()
End If
End Sub
'定义一个线程
Private Sub fun1()
Dim elapsed As TimeSpan
Dim Dg_txt As New Dg(AddressOf txt)
Do
elapsed = TimeSpan.FromMilliseconds((DateAndTime.Timer - Start) * 1000)
Me.Invoke(Dg_txt, elapsed.ToString, Label1)
Thread.Sleep(100)
Loop
End Sub
'定义一个委托
Delegate Sub Dg(ByVal s As String, ByVal obj As Label)
Sub txt(ByVal s As String, ByVal obj As Label)
obj.Text = s
End Sub
End Class