bool CDuiTimerBase::InnerSetTimer() { if(m_uTimerID) InnerKillTimer(); m_uTimerID = timeSetEvent(m_iInterval,m_uTimerAccuracy,TimerProc,(DWORD)this,TIME_PERIODIC); if(m_uTimerID) return true; m_pObject = NULL; m_pFun = NULL; return false; }
//************************************ // 函数名称: ~CDuiTimerBase // 返回类型: // 参数信息: void // 函数说明: //************************************ CDuiTimerBase::~CDuiTimerBase( void ) { InnerKillTimer(); m_pObject = NULL; m_pFun = NULL; m_pParam = NULL; m_iCurTimer = NULL; m_iInterval = NULL; m_iTotalTimer = NULL; m_hWnd = NULL; m_lParam = NULL; m_wParam = NULL; m_bAutoStart = true; m_bLoop = false; m_bReverse = false; m_bInverted = false; }
//************************************ // 函数名称: InnerSetTimer // 返回类型: bool // 函数说明: //************************************ bool CDuiTimerBase::InnerSetTimer() { if(m_uTimerID) InnerKillTimer(); if(!m_hWnd) m_uTimerID = timeSetEvent(m_iInterval,m_uTimerAccuracy,TimerProc,(DWORD)this,TIME_PERIODIC); else m_uTimerID = ::SetTimer(m_hWnd,(UINT_PTR)this,m_iInterval,TimerWndProc); if(m_uTimerID) return true; m_pObject = NULL; m_pFun = NULL; return false; }
void CDuiTimer::KillDuiTimer() { InnerKillTimer(); }
CDuiTimerBase::~CDuiTimerBase( void ) { InnerKillTimer(); }