假設你在做乙個小軟體,需要動態顯示某個軟體功能執行所花費的時間.就像防毒那樣,上面會有執行時間。動態顯示很簡單,首先想到的就是設定乙個定時器,每隔一秒獲取當前系統的時間,然後和程式剛執行的時間相減就能得出執行時間了。但是這樣就有乙個問題,假如中途你這個程式想要暫停一會,然後繼續,你會發現,顯示的時間突然跳變了,因為在你暫停的那一會,系統的時間是在流逝的,並不會暫停,只是你暫停顯示了而已。而我想要的效果就是你暫停了,再繼續時間還是接著原來的繼續一秒一秒的變化.這裡我介紹一種簡單的方法,當然了精度也只能是1秒,如果需要高精度的朋友請自行google.
方法如下:
新增三個成員變數
uint m_usecond; //小時,分鐘,秒
uint m_uminute;
uint m_uhour;
並在建構函式中初始化為0
假設現在是你一按下開始按鈕就開始執行時間,按下暫停按鈕就暫停,再按就繼續
所以你要在開始按鈕事件函式中新增如下**:
cstring s;
s.format(text("%u:%u:%u"), m_uhour, m_uminute, m_usecond);
setdlgitemtext(idc_static_time, s);
settimer(1, 1000, null);
在暫停按鈕中新增如下**:
if(m_bpause == false)
else
然後再定時器函式中新增如下**:
if (m_usecond == 59)
else
if (m_uminute == 59)
cstring s;
s.format(text("%u:%u:%u"), m_uhour, m_uminute, ++m_usecond);
setdlgitemtext(idc_static_time, s);
其原理就是通過自定義的時間計數器通過定時器定時累加. C C 中如何計算程式執行的時間
乙個程式的功能通常有很多種方法來實現,怎麼樣的程式才算得上最優呢?舉個例子,如果實現同乙個功能的兩個程式,乙個一點按鈕就給出執行結果,而另乙個則需要漫長的時間去等待,就像安裝windows xp一樣 呵呵,太誇張了吧 你會去使用哪個程式呢?毋庸置疑,最優程式的第一條法則就是 程式的執行速度要快。那麼...
js顯示動態時間的方法
js顯示動態時間的方法 date物件的方法 date 物件的方法並不是靜態的,但是在使用時卻可以應用於所指定的單獨實體。date 物件的方法簡介 getdate 根據本地時間獲取當前日期 本月的幾號 getday 根據本地時間獲取今天是星期幾 0 sunday,1 monday.getfullyea...
計算程式執行的時間
通常我們在寫程式後常常需要知道某一段 或者這個程式執行了多長時間,這樣有利於我們計算程式的效率,這篇文章講述的就是這個問題。首先,我們需要知道乙個結構 struct timeval 這個結構代表的是時間值,我們利用函式 gettimeofday 可以對其進行填充,其中的第乙個字段代表的是秒,第二個字...