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

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. // testView.cpp : implementation of the CTestView class
  2. //
  3. #include "stdafx.h"
  4. #include "test.h"
  5. #include "OccEx.h"
  6. #include "testDoc.h"
  7. #include "testView.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CTestView
  15. IMPLEMENT_DYNCREATE(CTestView, CView)
  16. BEGIN_MESSAGE_MAP(CTestView, CView)
  17. //{{AFX_MSG_MAP(CTestView)
  18. // NOTE - the ClassWizard will add and remove mapping macros here.
  19. //    DO NOT EDIT what you see in these blocks of generated code!
  20. //}}AFX_MSG_MAP
  21. END_MESSAGE_MAP()
  22. /////////////////////////////////////////////////////////////////////////////
  23. // CTestView construction/destruction
  24. CTestView::CTestView()
  25. {
  26. m_pCtrl = new CWindowlessControl;
  27. }
  28. CTestView::~CTestView()
  29. {
  30. delete m_pCtrl;
  31. m_pCtrl = NULL;
  32. }
  33. BOOL CTestView::PreCreateWindow(CREATESTRUCT& cs)
  34. {
  35. // TODO: Modify the Window class or styles here by modifying
  36. //  the CREATESTRUCT cs
  37. return CView::PreCreateWindow(cs);
  38. }
  39. /////////////////////////////////////////////////////////////////////////////
  40. // CTestView drawing
  41. void CTestView::OnDraw(CDC* pDC)
  42. {
  43. CTestDoc* pDoc = GetDocument();
  44. ASSERT_VALID(pDoc);
  45. if (m_pCtrlCont)
  46. STATIC_DOWNCAST(COleControlContainerEx, m_pCtrlCont)->OnDraw(pDC);
  47. }
  48. /////////////////////////////////////////////////////////////////////////////
  49. // CTestView diagnostics
  50. #ifdef _DEBUG
  51. void CTestView::AssertValid() const
  52. {
  53. CView::AssertValid();
  54. }
  55. void CTestView::Dump(CDumpContext& dc) const
  56. {
  57. CView::Dump(dc);
  58. }
  59. CTestDoc* CTestView::GetDocument() // non-debug version is inline
  60. {
  61. ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CTestDoc)));
  62. return (CTestDoc*)m_pDocument;
  63. }
  64. #endif //_DEBUG
  65. /////////////////////////////////////////////////////////////////////////////
  66. // CTestView message handlers
  67. void CTestView::OnInitialUpdate() 
  68. {
  69. CView::OnInitialUpdate();
  70. if (m_pCtrl->m_hWnd == NULL)
  71. {
  72. CRect rect(40, 40, 200, 200);
  73. // VERIFY(m_pCtrl->CreateControl("{CE963B33-54D6-11D1-B3E4-0020AF905F9C}", 
  74. if(!m_pCtrl->CreateControl("Forms.CheckBox.1", 
  75. NULL, WS_CHILD | WS_VISIBLE,
  76. rect, this, 1))
  77. {
  78. TRACE("Could not create controln");
  79. }
  80. else if (m_pCtrl->m_hWnd)
  81. {
  82. TRACE("Control created with window %Xn", m_pCtrl->m_hWnd);
  83. }
  84. else
  85. {
  86. TRACE("Control created windowlessn");
  87. }
  88. }
  89. }