ProgressBar.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #ifndef PROGRESSBAR_H
  2. #define PROGRESSBAR_H
  3. /* A Simple ProgressBar for test execution display
  4.  */
  5. class ProgressBar
  6. {
  7. public:
  8.                 ProgressBar     (CWnd *baseWindow, CRect& bounds);
  9.     void        step            (bool successful);
  10.     void        paint           (CDC& dc);
  11.     int         scale           (int value);
  12.     void        reset           ();
  13.     void        start           (int total);
  14. protected:
  15.     void        paintBackground (CDC& dc);
  16.     void        paintStatus     (CDC& dc);
  17.     COLORREF    getStatusColor  ();
  18.     void        paintStep       (int startX, int endX);
  19.     CWnd        *m_baseWindow;
  20.     CRect       m_bounds;
  21.     bool        m_error;
  22.     int         m_total;
  23.     int         m_progress;
  24.     int         m_progressX;
  25. };
  26. // Construct a ProgressBar
  27. inline ProgressBar::ProgressBar (CWnd *baseWindow, CRect& bounds)
  28. : m_baseWindow (baseWindow), m_bounds (bounds), m_error (false), 
  29. m_total (0), m_progress (0), m_progressX (0)
  30. {}
  31. // Get the current color
  32. inline COLORREF ProgressBar::getStatusColor ()
  33. { return m_error ? RGB (255, 0, 0) : RGB (0, 255, 0); }
  34. #endif