从秒表返回十分之一秒和十分之一秒

时间:2012-02-01 16:45:01

标签: vb.net visual-studio-2010 stopwatch

所以我越来越接近让计时器以我想要的方式工作,只有一个小问题。

我发现以下关于返回毫秒和纳秒的帖子: How do you convert Stopwatch ticks to nanoseconds, milliseconds and seconds?

但我想要做的只是在需要的时候只显示百分之十秒的十分之一。

我有以下代码:

Private Sub TotalTimer_Tick(sender As System.Object, e As System.EventArgs) Handles TotalTimer.Tick
    Dim elapsed As TimeSpan = Me.matchStopwatch.Elapsed

    Me.MatchClockLbl.Text = String.Format("{0:0}:{1:00}:{2:00}.{3:###}", _
                                   Math.Floor(elapsed.TotalHours), _
                                   elapsed.Minutes, _
                                   elapsed.Seconds, _
                                   (elapsed.Milliseconds / 100))

End Sub

现在我尝试将代码的一部分从{3:000}更改为{3:0}或{3:00},但这一切都是更改格式,它实际上并没有删除1000位数字或1000位数字,他们仍然出现。

我在MSDN上进一步发现了这个:

http://msdn.microsoft.com/en-us/library/ee372287.aspx#fSpecifier

但我一直在接受s.f或s / f或其他不正确的事情。

编辑:在代码的修改版本中添加,谢谢Oded。现在的新问题是标签喜欢偶尔闪烁一下额外的数字。

1 个答案:

答案 0 :(得分:1)

Milliseconds除以10得到100秒,得到100除以得到10秒钟。

这是通过整数除法 - 基本上丢弃最低有效数字并假定Milliseconds最多返回3位数。