[英]DateTime + Timer Tick?
我想在單擊按鈕時開始“經過的時間”。 到目前為止,我已經寫了:
private void timer_Tick(object sender, EventArgs e)
{
timeCounter++;
labelTimer.Text = "Elapsed Time: " + timeCounter.ToString();
}
timer
間隔為1000(1秒)。
我想要的是這樣格式化時間:
HH:MM:SS
並在秒數達到60時自動增加分鍾,以此類推。 我應該為此使用DateTime並每1秒添加一秒鍾嗎?
您可以使用TimeSpan :
TimeSpan _elapsed = new TimeSpan();
private void timer_Tick(object sender, EventArgs e)
{
_elapsed = _elapsed.Add(TimeSpan.FromMinutes(1));
labelTimer.Text = "Elapsed Time: " + _elapsed.ToString();
}
您可以使用秒表及其經過的時間來創建日期時間(並根據需要設置其格式)。
Stopwatch s = Stopwatch.StartNew();
//Some more operations here...
s.Stop();
DateTime t = new DateTime(s.ElapsedTicks);
如果願意,還可以設置秒表的頻率,以最大程度地減少資源消耗。
您可以像這樣使用的簡單方法:
private void timer_Tick(object sender, EventArgs e)
{
Stopwatch stopWatch = Stopwatch.StartNew();
// Your logics goes Here
stopWatch.Stop();
DateTime time = new DateTime(stopWatch.ElapsedTicks);
labelTimer.Text = time.ToString("HH:mm:ss");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.