57 lines
		
	
	
		
			737 B
		
	
	
	
		
			C++
		
	
	
	
		
		
			
		
	
	
			57 lines
		
	
	
		
			737 B
		
	
	
	
		
			C++
		
	
	
	
|  | #include "..\easy2d.h"
 | |||
|  | #include <assert.h>
 | |||
|  | 
 | |||
|  | Action::Action() : | |||
|  | 	m_bRunning(true), | |||
|  | 	m_bStop(false), | |||
|  | 	m_pParent(nullptr) | |||
|  | { | |||
|  | 	// Ĭ<>϶<EFBFBD><CFB6><EFBFBD> 15ms <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
 | |||
|  | 	setInterval(15); | |||
|  | } | |||
|  | 
 | |||
|  | Action::~Action() | |||
|  | { | |||
|  | } | |||
|  | 
 | |||
|  | bool Action::isRunning() | |||
|  | { | |||
|  | 	return m_bRunning; | |||
|  | } | |||
|  | 
 | |||
|  | void Action::start() | |||
|  | { | |||
|  | 	m_bRunning = true; | |||
|  | } | |||
|  | 
 | |||
|  | void Action::resume() | |||
|  | { | |||
|  | 	m_bRunning = true; | |||
|  | } | |||
|  | 
 | |||
|  | void Action::pause() | |||
|  | { | |||
|  | 	m_bRunning = false; | |||
|  | } | |||
|  | 
 | |||
|  | void Action::stop() | |||
|  | { | |||
|  | 	m_bStop = true; | |||
|  | } | |||
|  | 
 | |||
|  | void Action::setInterval(UINT ms) | |||
|  | { | |||
|  | 	// <20><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | |||
|  | 	LARGE_INTEGER nFreq; | |||
|  | 	QueryPerformanceFrequency(&nFreq); | |||
|  | 	m_nAnimationInterval.QuadPart = (LONGLONG)(ms / 1000.0 * nFreq.QuadPart); | |||
|  | 	// <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
 | |||
|  | 	this->m_nMilliSeconds = ms; | |||
|  | } | |||
|  | 
 | |||
|  | Action * Action::reverse() const | |||
|  | { | |||
|  | 	assert(0); | |||
|  | 	return nullptr; | |||
|  | } |