簡體   English   中英

如何在C#中檢查計時器的經過時間

[英]how to check for the elapsed time of a timer in c#

我的代碼如下:

    private void Timer_Tick(object sender, EventArgs e)
    {
        time--;
        Timelbl.Text = "Time: " + time + " seconds";

        if (time == 0)
        {
            Timer.Stop();
            Timelbl.Text = "Time: " + 0 + " seconds";
        }
    }

我想知道如何檢查自計時器啟動以來已經過了多長時間。 例如,如果可變時間是30秒后20秒,我想知道計時器是在20秒前啟動的,但是問題是可變時間的值一直都在變化,所以我將如何在c#中執行此操作?

因此,這基本上可以歸結為Timer vs. Stopwatch

每個文檔都有一個Timer :在設置的時間間隔后生成事件,並帶有生成重復事件的選項。

每個文檔的Stopwatch :提供一組方法和屬性,可用於准確測量經過的時間。

您可以將Stopwatch設置為Form的屬性,然后通過執行以下操作來更新Timer事件中的UI,以更新UI並顯示經過的時間:

Timelbl.Text = "Time: " + (sw.ElapsedMilliseconds / 1000).ToString() + " seconds";

假設swStopwatch類型。

讓我知道您是否需要在表單上設置Stopwatch特定幫助/如果遇到障礙,請進行設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM