TextProgressCtrl.h
上传用户:yatsl7111
上传日期:2007-01-08
资源大小:1433k
文件大小:3k
源码类别:

图形图象

开发平台:

Visual C++

  1. #if !defined(AFX_TEXTPROGRESSCTRL_H__4C78DBBE_EFB6_11D1_AB14_203E25000000__INCLUDED_)
  2. #define AFX_TEXTPROGRESSCTRL_H__4C78DBBE_EFB6_11D1_AB14_203E25000000__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // TextProgressCtrl.h : header file
  7. //
  8. // Written by Chris Maunder (cmaunder@mail.com)
  9. // Copyright 1998.
  10. //
  11. // TextProgressCtrl is a drop-in replacement for the standard 
  12. // CProgressCtrl that displays text in a progress control.
  13. //
  14. // This code may be used in compiled form in any way you desire. This
  15. // file may be redistributed by any means PROVIDING it is not sold for
  16. // profit without the authors written consent, and providing that this
  17. // notice and the authors name is included. If the source code in 
  18. // this file is used in any commercial application then an email to
  19. // the me would be nice.
  20. //
  21. // This file is provided "as is" with no expressed or implied warranty.
  22. // The author accepts no liability if it causes any damage to your
  23. // computer, causes your pet cat to fall ill, increases baldness or
  24. // makes you car start emitting strange noises when you start it up.
  25. //
  26. // Expect bugs.
  27. // 
  28. // Please use and enjoy. Please let me know of any bugs/mods/improvements 
  29. // that you have found/implemented and I will fix/incorporate them into this
  30. // file. 
  31. #include "UIData.h"
  32. /////////////////////////////////////////////////////////////////////////////
  33. // CTextProgressCtrl window
  34. class CTextProgressCtrl : public CUIODColumnCtrl
  35. {
  36. DECLARE_DYNAMIC(CTextProgressCtrl)
  37. // Construction
  38. public:
  39. CTextProgressCtrl();
  40. // Attributes
  41. public:
  42. // Operations
  43. public:
  44.     int  SetPos(int nPos);
  45.     int  StepIt();
  46.     void SetRange(int nLower, int nUpper);
  47.     void GetRange(int& nLower, int& nUpper) const;
  48.     int  OffsetPos(int nPos);
  49.     int  SetStep(int nStep);
  50. // Attributes
  51.     void SetShowText(BOOL bShow);
  52.     COLORREF SetTextColor(COLORREF crTextClr = CLR_DEFAULT,COLORREF crSelTextClr=CLR_DEFAULT);
  53.     COLORREF GetTextColor() const;
  54.     COLORREF GetSelTextColor() const;
  55.     COLORREF SetBarColor(COLORREF crBarClr = CLR_DEFAULT,COLORREF crSelBarClr = CLR_DEFAULT);
  56.     COLORREF GetBarColor() const;
  57.     COLORREF GetSelBarColor() const;
  58.     COLORREF SetBgColor(COLORREF crBgClr = CLR_DEFAULT,COLORREF crSelBgClr = CLR_DEFAULT);
  59.     COLORREF GetBgColor() const;
  60.     COLORREF GetSelBgColor() const;
  61. public:
  62. // Overrides
  63. virtual void DoPaint(CDC *PaintDC,CRect rcClient,bool bSelected);
  64. // Implementation
  65. public:
  66. virtual ~CTextProgressCtrl();
  67. // Generated message map functions
  68. protected:
  69.     int      m_nPos, 
  70.              m_nStepSize, 
  71.              m_nMax, 
  72.              m_nMin;
  73.     CString  m_strText;
  74.     BOOL     m_bShowText;
  75.     int      m_nBarWidth;
  76. private:
  77.     COLORREF m_crBarClr,
  78.  m_crSelBarClr,
  79.  m_crTextClr,
  80.  m_crSelTextClr,
  81.              m_crBgClr,
  82.              m_crSelBgClr;
  83. };
  84. /////////////////////////////////////////////////////////////////////////////
  85. //{{AFX_INSERT_LOCATION}}
  86. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  87. #endif // !defined(AFX_TEXTPROGRESSCTRL_H__4C78DBBE_EFB6_11D1_AB14_203E25000000__INCLUDED_)