ProgressCtrlST.h
上传用户:dengkfang
上传日期:2008-12-30
资源大小:5233k
文件大小:2k
源码类别:

CA认证

开发平台:

Visual C++

  1. //
  2. // Class: CProgressCtrlST
  3. //
  4. // Compiler: Visual C++
  5. // Tested on: Visual C++ 6.0
  6. //
  7. // Version: See GetVersionC() or GetVersionI()
  8. //
  9. // Created: 01/January/1999
  10. // Updated: 27/August/2002
  11. //
  12. // Author: Davide Calabro' davide_calabro@yahoo.com
  13. // http://www.softechsoftware.it
  14. //
  15. // Disclaimer
  16. // ----------
  17. // THIS SOFTWARE AND THE ACCOMPANYING FILES ARE DISTRIBUTED "AS IS" AND WITHOUT
  18. // ANY WARRANTIES WHETHER EXPRESSED OR IMPLIED. NO REPONSIBILITIES FOR POSSIBLE
  19. // DAMAGES OR EVEN FUNCTIONALITY CAN BE TAKEN. THE USER MUST ASSUME THE ENTIRE
  20. // RISK OF USING THIS SOFTWARE.
  21. //
  22. // Terms of use
  23. // ------------
  24. // THIS SOFTWARE IS FREE FOR PERSONAL USE OR FREEWARE APPLICATIONS.
  25. // IF YOU USE THIS SOFTWARE IN COMMERCIAL OR SHAREWARE APPLICATIONS YOU
  26. // ARE GENTLY ASKED TO DONATE 5$ (FIVE U.S. DOLLARS) TO THE AUTHOR:
  27. //
  28. // Davide Calabro'
  29. // P.O. Box 65
  30. // 21019 Somma Lombardo (VA)
  31. // Italy
  32. //
  33. #ifndef _PROGRESSCTRLST_H
  34. #define _PROGRESSCTRLST_H
  35. #if _MSC_VER >= 1000
  36. #pragma once
  37. #endif // _MSC_VER >= 1000
  38. // Return values
  39. #ifndef PROGRESSCTRLST_OK
  40. #define PROGRESSCTRLST_OK 0
  41. #endif
  42. #ifndef PROGRESSCTRLST_INVALIDRESOURCE
  43. #define PROGRESSCTRLST_INVALIDRESOURCE 1
  44. #endif
  45. class CProgressCtrlST : public CProgressCtrl
  46. {
  47. public:
  48. CProgressCtrlST();
  49. virtual ~CProgressCtrlST();
  50. DWORD SetBitmap(int nBitmap, BOOL bRepaint = TRUE);
  51. DWORD SetBitmap(HBITMAP hBitmap, BOOL bRepaint = TRUE);
  52. void SetRange(int nLower, int nUpper);
  53. int SetStep(int nStep);
  54. int SetPos(int nPos);
  55. int StepIt();
  56. static short GetVersionI() {return 11;}
  57. static LPCTSTR GetVersionC() {return (LPCTSTR)_T("1.1");}
  58. // ClassWizard generated virtual function overrides
  59. //{{AFX_VIRTUAL(CProgressCtrlST)
  60. //}}AFX_VIRTUAL
  61. protected:
  62. virtual void OnDrawText(CDC* pDC, int nPercentage, CRect rcCtrl, CRect rcProgress, BOOL bVertical);
  63. //{{AFX_MSG(CProgressCtrlST)
  64. afx_msg void OnPaint();
  65. //}}AFX_MSG
  66. int m_nLower;
  67. int m_nUpper;
  68. int m_nRange;
  69. int m_nStep;
  70. int m_nPos;
  71. HBITMAP m_hBitmap; // Handle to bitmap
  72. DWORD m_dwWidth; // Width of bitmap
  73. DWORD m_dwHeight; // Height of bitmap
  74. private:
  75. void FreeResources(BOOL bCheckForNULL = TRUE);
  76. void CalcRange();
  77. void TileBitmap(HDC hdcDest, HDC hdcSrc, CRect rect);
  78. DECLARE_MESSAGE_MAP()
  79. };
  80. //{{AFX_INSERT_LOCATION}}
  81. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  82. #endif