MFC 自定義時間間隔Timer

2021-06-26 11:56:56 字數 832 閱讀 6338

需求: 對某項的處理,需要每隔一段時間處理一次。其它時間不處理。

實現: 通過該類,可以設定乙個定時器,不停查詢時,每n毫秒,返回一次true,用於間隔執行。

當然了,也可使用mfc定時器來主動觸發,效果類似,但也有些不同,適用於不同的需求場景。

mfc定時器通常用於固定觸發,把觸發的動作時間排除在外,例如: sleep(n)->執行時間->sleep(n)

而這個cmytimer的話,把觸發動作執行時間排除在外,例如sleep(n)->sleep(n) 和 執行時間無關。

class cmytimer

public:

// ntimestep: 執行間隔

// bisfirsttimeproc: 第一次是否立刻執行

cmytimer(dword ntimestep = 1000, bool bisfirsttimeproc = true)

m_timestep = ntimestep;

if (!bisfirsttimeproc)

m_starttime = timegettime();

else

m_starttime = 0;

bool istimetoexecute()

dword curtime = timegettime();

if (curtime >= m_starttime + m_timestep)

m_starttime = curtime;

return true;

return false;

private:

dword m_starttime;

dword m_timestep;

MFC自定義訊息

訊息機制是windows的典型執行機制,在mfc中有很多的訊息如wm btn 等。但是在有些情況下我們需要自定義一些訊息去做一些我們需要的功能,mfc的嚮導不能幫助我們做到這一點,我們可以通過新增相應的 去完成這個功能。新增自定義訊息操作如下 1.建立mfc工程,如基於對話方塊的應用程式,test。...

MFC自定義訊息

訊息機制是windows的典型執行機制,在mfc中有很多的訊息如wm btn 等。但是在有些情況下我們需要自定義一些訊息去做一些我們需要的功能,mfc的嚮導不能幫助我們做到這一點,我們可以通過新增相應的 去完成這個功能。新增自定義訊息操作如下 1.建立mfc工程,如基於對話方塊的應用程式,test。...

MFC自定義訊息

訊息機制是windows的典型執行機制,在mfc中有很多的訊息如wm btn 等。但是在有些情況下我們需要自定義一些訊息去做一些我們需要的功能,mfc的嚮導不能幫助我們做到這一點,我們可以通過新增相應的 去完成這個功能。新增自定義訊息操作如下 1.建立mfc工程,如基於對話方塊的應用程式,test。...