ProgressInfo.cpp
上传用户:hell82222
上传日期:2013-12-19
资源大小:1872k
文件大小:2k
源码类别:

CAD

开发平台:

Visual C++

  1. // ProgressInfo.cpp: implementation of the CProgressInfo class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "FileSwitch.h"
  6. #include "ProgressInfo.h"
  7. #ifdef _DEBUG
  8. #undef THIS_FILE
  9. static char THIS_FILE[]=__FILE__;
  10. #define new DEBUG_NEW
  11. #endif
  12. //////////////////////////////////////////////////////////////////////
  13. // Construction/Destruction
  14. //////////////////////////////////////////////////////////////////////
  15. CProgressInfo::CProgressInfo()
  16. {
  17. m_dProgress=0; //当前进度值,取值范围0-1.
  18. m_strProgressTip.Format("KMCAD2D文件转换系统"); //当前提示信息.
  19. m_bHaveSetProgressRange=FALSE; //是否设定过进度范围.
  20. }
  21. CProgressInfo::~CProgressInfo()
  22. {
  23. }
  24. BOOL CProgressInfo::SetProgressInfoAbsolute(double dProgress,CString strProgressTip) //不保证进度只能增加.
  25. {
  26. if( (dProgress>=0)&&(dProgress<=1) )
  27. {
  28. m_dProgress=dProgress;
  29. m_strProgressTip=strProgressTip;
  30. return TRUE;
  31. }
  32. return FALSE;
  33. }
  34. BOOL CProgressInfo::GetProgressInfo(double &dProgress,CString &strProgressTip)
  35. {
  36. dProgress=m_dProgress;
  37. strProgressTip=m_strProgressTip;
  38. return TRUE;
  39. }
  40. BOOL CProgressInfo::SetProgressRange(double dProgressRange)
  41. {
  42. if(dProgressRange>0)
  43. {
  44. m_bHaveSetProgressRange=TRUE;
  45. m_dProgressRange=dProgressRange;
  46. return TRUE;
  47. }
  48. return FALSE;
  49. }
  50. BOOL CProgressInfo::SetProgressInfoRelative(double dProgress,CString strProgressTip) //应当保证进度只能增加,并发送进度消息.进度值应当小于范围值.
  51. {
  52. if(m_bHaveSetProgressRange)
  53. {//已经设定进度范围
  54. if( (dProgress<=m_dProgressRange)&&(dProgress>=0) )
  55. {//进度值小于等于进度范围大于等于零
  56. //※已经在函数SetProgressRange保证m_dProgressRange大于等于零.
  57. return SetProgressInfoAbsolute(dProgress/m_dProgressRange,strProgressTip);
  58. }
  59. }
  60. return FALSE;
  61. }