MfcSaverDlg.cpp
上传用户:szxyd1688
上传日期:2007-06-08
资源大小:1440k
文件大小:2k
源码类别:

屏幕保护

开发平台:

Visual C++

  1. // MfcSaverDlg.cpp : implementation file
  2. //
  3. #include "StdAfx.h"
  4. #include "MfcSaver.h"
  5. #include "MfcSaverDlg.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. BEGIN_MESSAGE_MAP(CMfcSaverDlg, CB14Dlg)
  13. //{{AFX_MSG_MAP(CMfcSaverDlg)
  14. ON_WM_PAINT()
  15. ON_WM_QUERYDRAGICON()
  16. //}}AFX_MSG_MAP
  17. END_MESSAGE_MAP()
  18. CMfcSaverDlg::CMfcSaverDlg()
  19. {
  20. //{{AFX_DATA_INIT(CMfcSaverDlg)
  21. //}}AFX_DATA_INIT
  22. }
  23. BOOL CMfcSaverDlg::OnInitDialog()
  24. {
  25. CB14Dlg::OnInitDialog();
  26. return TRUE;
  27. }
  28. /////////////////////////////////////////////////////////////////////////////
  29. //
  30. // As with most MFC dialog boxes, the DoDataExchange() is where all the work
  31. // happens.  There's no easy DDX_Trackbar thing to set up the control, so
  32. // we do it ourselves.  See how the SaveOptions() and RestoreOptions() are
  33. // called on the CMfcSaver to keep those options persistent.
  34. //
  35. void CMfcSaverDlg::DoDataExchange(CDataExchange* pDX)
  36. {
  37. CB14Dlg::DoDataExchange(pDX);
  38. //{{AFX_DATA_MAP(CMfcSaverDlg)
  39. //}}AFX_DATA_MAP
  40. CMfcSaver* pSaver = (CMfcSaver*)AfxGetScreenSaverWnd();
  41. if (!pSaver)
  42. return;
  43. CSliderCtrl* pSlider;
  44. if (!pDX->m_bSaveAndValidate)
  45. {
  46. pSaver->RestoreOptions();
  47. pSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
  48. pSlider->SetRange(1, 50);
  49. pSlider->SetPos(pSaver->GetIconCount());
  50. pSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER2);
  51. pSlider->SetRange(1, 50);
  52. pSlider->SetPos(pSaver->GetIconSpeed());
  53. }
  54. else
  55. {
  56. pSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
  57. pSaver->SetIconCount(pSlider->GetPos());
  58. pSlider = (CSliderCtrl*)GetDlgItem(IDC_SLIDER2);
  59. pSaver->SetIconSpeed(pSlider->GetPos());
  60. pSaver->SaveOptions();
  61. }
  62. }