ProgressInfo.cpp
上传用户:hell82222
上传日期:2013-12-19
资源大小:1872k
文件大小:2k
- // ProgressInfo.cpp: implementation of the CProgressInfo class.
- //
- //////////////////////////////////////////////////////////////////////
- #include "stdafx.h"
- #include "FileSwitch.h"
- #include "ProgressInfo.h"
- #ifdef _DEBUG
- #undef THIS_FILE
- static char THIS_FILE[]=__FILE__;
- #define new DEBUG_NEW
- #endif
- //////////////////////////////////////////////////////////////////////
- // Construction/Destruction
- //////////////////////////////////////////////////////////////////////
- CProgressInfo::CProgressInfo()
- {
- m_dProgress=0; //当前进度值,取值范围0-1.
- m_strProgressTip.Format("KMCAD2D文件转换系统"); //当前提示信息.
- m_bHaveSetProgressRange=FALSE; //是否设定过进度范围.
- }
- CProgressInfo::~CProgressInfo()
- {
- }
- BOOL CProgressInfo::SetProgressInfoAbsolute(double dProgress,CString strProgressTip) //不保证进度只能增加.
- {
- if( (dProgress>=0)&&(dProgress<=1) )
- {
- m_dProgress=dProgress;
- m_strProgressTip=strProgressTip;
- return TRUE;
- }
- return FALSE;
- }
- BOOL CProgressInfo::GetProgressInfo(double &dProgress,CString &strProgressTip)
- {
- dProgress=m_dProgress;
- strProgressTip=m_strProgressTip;
- return TRUE;
- }
- BOOL CProgressInfo::SetProgressRange(double dProgressRange)
- {
- if(dProgressRange>0)
- {
- m_bHaveSetProgressRange=TRUE;
- m_dProgressRange=dProgressRange;
- return TRUE;
- }
- return FALSE;
- }
- BOOL CProgressInfo::SetProgressInfoRelative(double dProgress,CString strProgressTip) //应当保证进度只能增加,并发送进度消息.进度值应当小于范围值.
- {
- if(m_bHaveSetProgressRange)
- {//已经设定进度范围
- if( (dProgress<=m_dProgressRange)&&(dProgress>=0) )
- {//进度值小于等于进度范围大于等于零
-
- //※已经在函数SetProgressRange保证m_dProgressRange大于等于零.
- return SetProgressInfoAbsolute(dProgress/m_dProgressRange,strProgressTip);
- }
- }
- return FALSE;
- }