VB.NET更改“的时间”;“秒表”;控制
我有秒表,我想让秒表从VB.NET更改“的时间”;“秒表”;控制,vb.net,winforms,stopwatch,Vb.net,Winforms,Stopwatch,我有秒表,我想让秒表从01:00:12000开始计时 我的代码(不工作): 这是不可能的 无法将Stopwatch类初始化为0以外的任何值 但是,没有什么能阻止你在结果上增加1小时12秒 lb.Text = (sp.Elapsed.Hours + 1).ToString & ":" & sp.Elapsed.Minutes.ToString _ & ":" & (sp.Elapsed.Seconds + 12).ToString & "
01:00:12000开始计时
我的代码(不工作):
这是不可能的
无法将Stopwatch类初始化为0以外的任何值
但是,没有什么能阻止你在结果上增加1小时12秒
lb.Text = (sp.Elapsed.Hours + 1).ToString & ":" & sp.Elapsed.Minutes.ToString _
& ":" & (sp.Elapsed.Seconds + 12).ToString & "," _
& sp.Elapsed.Milliseconds.ToString
秒表不是那样工作的。您需要做的是在不同的变量中记录开始时间,然后将秒表的运行时间添加到开始时间中
Dim StartTime AS Date = Date.Now
...
Dim EndTime AS Date = StartTime.AddMilliseconds(StopWatch1.ElapsedMilliseconds)
运行上述程序时会发生什么情况?秒表是“00:00:00000”。您可以编写一个包装器类,其中包含秒表并具有初始时间。它提供了与秒表相同的方法,但是像appeased
这样的属性返回经过的时间跨度+初始偏移时间跨度。.Equals()
方法的工作方式与您期望的完全不同。它继承自对象
,如果属性的值等于参数,则返回一个布尔值。它没有分配或设置任何内容。@JoelCoehoorn:很好,你纠正了误解,但实际上它不是对象。等于但是。@SSID:记住接受最好的答案。
Dim StartTime AS Date = Date.Now
...
Dim EndTime AS Date = StartTime.AddMilliseconds(StopWatch1.ElapsedMilliseconds)