GradientProgressCtrl.h
上传用户:aokegd
上传日期:2009-12-14
资源大小:1276k
文件大小:2k
源码类别:

书籍源码

开发平台:

Visual C++

  1. #if !defined(AFX_ENHPROGRESSCTRL_H__12909D73_C393_11D1_9FAE_8192554015AD__INCLUDED_)
  2. #define AFX_ENHPROGRESSCTRL_H__12909D73_C393_11D1_9FAE_8192554015AD__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // EnhProgressCtrl.h : header file
  7. //
  8. #include "MemDC.h"
  9. /////////////////////////////////////////////////////////////////////////////
  10. // CGradientProgressCtrl window
  11. class CGradientProgressCtrl : public CProgressCtrl
  12. {
  13. // Construction
  14. public:
  15. CGradientProgressCtrl();
  16. // Attributes
  17. public:
  18. // Attributes
  19. void SetRange(int nLower, int nUpper);
  20. int SetPos(int nPos);
  21. int SetStep(int nStep);
  22. int StepIt(void);
  23. // Operations
  24. public:
  25. // Set Functions
  26. void SetTextColor(COLORREF color) {m_clrText = color;}
  27. void SetBkColor(COLORREF color)  {m_clrBkGround = color;}
  28. void SetStartColor(COLORREF color) {m_clrStart = color;}
  29. void SetEndColor(COLORREF color) {m_clrEnd = color;}
  30. // Show the percent caption
  31. void ShowPercent(BOOL bShowPercent = TRUE) {m_bShowPercent = bShowPercent;}
  32. // Get Functions
  33. COLORREF GetTextColor(void) {return m_clrText;}
  34. COLORREF GetBkColor(void)  {return m_clrBkGround;}
  35. COLORREF GetStartColor(void) {return m_clrStart;}
  36. COLORREF GetEndColor(void) {return m_clrEnd;}
  37. // Overrides
  38. // ClassWizard generated virtual function overrides
  39. //{{AFX_VIRTUAL(CGradientProgressCtrl)
  40. //}}AFX_VIRTUAL
  41. // Implementation
  42. public:
  43. virtual ~CGradientProgressCtrl();
  44. // Generated message map functions
  45. protected:
  46. void DrawGradient(CPaintDC *pDC, const RECT &rectClient, const int &nMaxWidth);
  47. int m_nLower, m_nUpper, m_nStep, m_nCurrentPosition;
  48. COLORREF m_clrStart, m_clrEnd, m_clrBkGround, m_clrText;
  49. BOOL m_bShowPercent;
  50. //{{AFX_MSG(CGradientProgressCtrl)
  51. afx_msg void OnPaint();
  52. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  53. //}}AFX_MSG
  54. DECLARE_MESSAGE_MAP()
  55. };
  56. /////////////////////////////////////////////////////////////////////////////
  57. //{{AFX_INSERT_LOCATION}}
  58. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  59. #endif // !defined(AFX_ENHPROGRESSCTRL_H__12909D73_C393_11D1_9FAE_8192554015AD__INCLUDED_)