SkinProgressTestScanned.cpp
上传用户:jmtfjn
上传日期:2007-02-20
资源大小:85k
文件大小:2k
源码类别:

状态条

开发平台:

Visual C++

  1. // SkinProgressTestScanned.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "skinprogresstest.h"
  5. #include "SkinProgressTestScanned.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CSkinProgressTestScanned dialog
  13. #ifdef dCSP_DIALOG_PROGRESS
  14. CSkinProgressTestScanned::CSkinProgressTestScanned(CWnd* pParent /*=NULL*/)
  15. : CDialog(CSkinProgressTestScanned::IDD, pParent)
  16. {
  17. //{{AFX_DATA_INIT(CSkinProgressTestScanned)
  18. // NOTE: the ClassWizard will add member initialization here
  19. //}}AFX_DATA_INIT
  20. }
  21. void CSkinProgressTestScanned::DoDataExchange(CDataExchange* pDX)
  22. {
  23. CDialog::DoDataExchange(pDX);
  24. //{{AFX_DATA_MAP(CSkinProgressTestScanned)
  25. DDX_Control(pDX, IDOK, m_cButtonOk);
  26. DDX_Control(pDX, IDC_THERMO, m_cStaticThermo);
  27. DDX_Control(pDX, IDC_PEN, m_cStaticPencil);
  28. //}}AFX_DATA_MAP
  29. }
  30. BEGIN_MESSAGE_MAP(CSkinProgressTestScanned, CDialog)
  31. //{{AFX_MSG_MAP(CSkinProgressTestScanned)
  32. //}}AFX_MSG_MAP
  33. END_MESSAGE_MAP()
  34. /////////////////////////////////////////////////////////////////////////////
  35. // CSkinProgressTestScanned message handlers
  36. /*
  37. */
  38. void CSkinProgressTestScanned::OnOK() 
  39. {
  40.   m_cButtonOk.EnableWindow(false);
  41. // TODO: Add extra validation here
  42.   int nMultiplyDelay = 100000; // 100000 : Dummy value, sorry, I've got a super strong computer
  43.   // It's also nice to test the <dCSP_TIMED_REDRAW> mode
  44.   //
  45.   CBitmap oBitmapThermo;
  46.   CBitmap oBitmapPencil;
  47.   // Init
  48.   oBitmapThermo.LoadBitmap(IDB_BMP_THERMO);
  49.   oBitmapPencil.LoadBitmap(IDB_BMP_PENCIL);
  50.   CSkinProgress oProgressThermo
  51.   (
  52.     &m_cStaticThermo,
  53.     11 * nMultiplyDelay, // 11 for not overwrite the end element of the thermometer
  54.     &oBitmapThermo
  55.   );
  56.   
  57.   CSkinProgress oProgressPencil
  58.   (
  59.     &m_cStaticPencil,
  60.     10 * nMultiplyDelay,
  61.     &oBitmapPencil
  62.   );
  63.   oProgressPencil.SetPos(10 * nMultiplyDelay);
  64.   oProgressPencil.SetStep(-1);
  65.   
  66.   // 
  67. for(int i = 0; i < 10 * nMultiplyDelay; i += 1)
  68.   {
  69.   oProgressThermo.StepIt();
  70.   oProgressPencil.StepIt();
  71.   PeekAndPump();
  72. }
  73.   m_cButtonOk.EnableWindow(true);
  74. CDialog::OnOK(); // Quit
  75. }
  76. #endif // dCSP_DIALOG_PROGRESS