Page1.cpp
上传用户:yongqian
上传日期:2007-01-02
资源大小:74k
文件大小:2k
源码类别:

PropertySheet

开发平台:

Visual C++

  1. // Page1.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "propinprop.h"
  5. #include "propertySubSheet1.h"
  6. #include "Subpage1.h"
  7. #include "Subpage2.h"
  8. #include "Subpage3.h"
  9. #include "Page1.h"
  10. #ifdef _DEBUG
  11. #define new DEBUG_NEW
  12. #undef THIS_FILE
  13. static char THIS_FILE[] = __FILE__;
  14. #endif
  15. /////////////////////////////////////////////////////////////////////////////
  16. // Page1 property page
  17. IMPLEMENT_DYNCREATE(Page1, CPropertyPage)
  18. Page1::Page1() : CPropertyPage(Page1::IDD)
  19. {
  20. //{{AFX_DATA_INIT(Page1)
  21. // NOTE: the ClassWizard will add member initialization here
  22. //}}AFX_DATA_INIT
  23. }
  24. Page1::~Page1()
  25. {
  26.   if(m_pSubpage1)
  27.     delete m_pSubpage1;
  28.   if(m_pSubpage2)
  29.     delete m_pSubpage2;
  30.   if(m_pSubpage3)
  31.     delete m_pSubpage3;
  32.   if(m_pSubSheet1)
  33.     delete m_pSubSheet1;
  34. }
  35. BOOL Page1::OnInitDialog()
  36. {
  37.   CDialog::OnInitDialog();
  38.   
  39.   m_pSubpage1 = new Subpage1;
  40.   m_pSubpage2 = new Subpage2;
  41.   m_pSubpage3 = new Subpage3;
  42.   
  43.   m_pSubSheet1 = new PropertySubSheet1;
  44.   m_pSubSheet1->AddPage(m_pSubpage1);
  45.   m_pSubSheet1->AddPage(m_pSubpage2);
  46.   m_pSubSheet1->AddPage(m_pSubpage3);
  47.   
  48.   m_pSubSheet1->Create(this, WS_CHILD | WS_VISIBLE, 0);
  49. m_pSubSheet1->ModifyStyleEx (0, WS_EX_CONTROLPARENT);
  50. m_pSubSheet1->ModifyStyle( 0, WS_TABSTOP );
  51.   
  52.   CRect rcSheet;
  53.   GetDlgItem( IDC_PLACEHOLDER1 )->GetWindowRect( &rcSheet );
  54. ScreenToClient( &rcSheet );
  55.   m_pSubSheet1->SetWindowPos( NULL, rcSheet.left-7, rcSheet.top-7, 0,0,
  56.   SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE );
  57.   return TRUE;  
  58. }
  59. void Page1::DoDataExchange(CDataExchange* pDX)
  60. {
  61. CPropertyPage::DoDataExchange(pDX);
  62. //{{AFX_DATA_MAP(Page1)
  63. // NOTE: the ClassWizard will add DDX and DDV calls here
  64. //}}AFX_DATA_MAP
  65. }
  66. BEGIN_MESSAGE_MAP(Page1, CPropertyPage)
  67. //{{AFX_MSG_MAP(Page1)
  68. // NOTE: the ClassWizard will add message map macros here
  69. //}}AFX_MSG_MAP
  70. END_MESSAGE_MAP()
  71. /////////////////////////////////////////////////////////////////////////////
  72. // Page1 message handlers