正文
vb.net毫秒差 vb 毫秒
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
vb.net毫秒计时器代码问题
elapsed.Milliseconds 获取毫秒。
每100毫秒,do中的代码执行一次,执行时间将大于100毫秒,这是产生误差的地方之一。invoke执行一个方法txt,必须等txt里面的代码运行完毕,方法才能返回,期间占用的时间全是“误差”。
无限循环,且没有退出机制,停不下来。
VB.net窗体程序的time控件,可以识别到的最小时间差是多少纳秒 ?
VB有现成的函数:
DateDiff(格式,日期1,日期2)
如今天到2010-5-1 8:00:00的时间差,代码:
DateDiff("yyyy",Now,#2010-5-1 8:00:00#) '还有几(整)年
DateDiff("q",Now,#2010-5-1 8:00:00#) '还有几(整)季度
DateDiff("m",Now,#2010-5-1 8:00:00#) '还有几(整)月
DateDiff("d",Now,#2010-5-1 8:00:00#) '还有几(整)天
DateDiff("ww",Now,#2010-5-1 8:00:00#) '还有几(整)周
DateDiff("h",Now,#2010-5-1 8:00:00#) '还有几(整)小时
DateDiff("n",Now,#2010-5-1 8:00:00#) '还有几(整)分钟
DateDiff("s",Now,#2010-5-1 8:00:00#) '还有几(整)秒
怎样用vb.net做毫秒计时器(有没有什么类似于ccrptmr之类的控件)
不需要控件就可以,用多线程的方式实现,在窗体上放一个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
VB.NET 如何计算时间差
使用datediff函数
textbox3.text=datediff("d","textbox1.text","textbox2.text")
说明一下:
“d”表示“天”
还可以用“y”,"m","d","h","n","s"
分别表示“年”“月”“日”“时”“分”“秒”
如何在vb.net中取得两时间的毫秒差
dim a1 as timespan = dtEndTime -dtStartTime
dim a2 as integer = a1.TotalMilliseconds
关于vb.net毫秒差和vb 毫秒的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。