ex75View.cpp
上传用户:qdhmjx
上传日期:2022-07-11
资源大小:2226k
文件大小:2k
源码类别:

书籍源码

开发平台:

Visual C++

  1. // ex75View.cpp : implementation of the CEx75View class
  2. //
  3. #include "stdafx.h"
  4. #include "ex75.h"
  5. #include "ex75Doc.h"
  6. #include "ex75View.h"
  7. #ifdef _DEBUG
  8. #define new DEBUG_NEW
  9. #undef THIS_FILE
  10. static char THIS_FILE[] = __FILE__;
  11. #endif
  12. /////////////////////////////////////////////////////////////////////////////
  13. // CEx75View
  14. IMPLEMENT_DYNCREATE(CEx75View, CView)
  15. BEGIN_MESSAGE_MAP(CEx75View, CView)
  16. //{{AFX_MSG_MAP(CEx75View)
  17. ON_COMMAND(ID_COLORDIALOG, OnColordialog)
  18. //}}AFX_MSG_MAP
  19. // Standard printing commands
  20. ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
  21. ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
  22. ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
  23. END_MESSAGE_MAP()
  24. /////////////////////////////////////////////////////////////////////////////
  25. // CEx75View construction/destruction
  26. CEx75View::CEx75View()
  27. {
  28. // TODO: add construction code here
  29. }
  30. CEx75View::~CEx75View()
  31. {
  32. }
  33. BOOL CEx75View::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. // CEx75View drawing
  41. void CEx75View::OnDraw(CDC* pDC)
  42. {
  43. CEx75Doc* pDoc = GetDocument();
  44. ASSERT_VALID(pDoc);
  45. CPen mypen;
  46. mypen.CreatePen(PS_SOLID,3,crColor);
  47. pDC->SelectObject(&mypen);
  48. pDC->Ellipse(200,100,400,300);
  49. }
  50. /////////////////////////////////////////////////////////////////////////////
  51. // CEx75View printing
  52. BOOL CEx75View::OnPreparePrinting(CPrintInfo* pInfo)
  53. {
  54. // default preparation
  55. return DoPreparePrinting(pInfo);
  56. }
  57. void CEx75View::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  58. {
  59. // TODO: add extra initialization before printing
  60. }
  61. void CEx75View::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  62. {
  63. // TODO: add cleanup after printing
  64. }
  65. /////////////////////////////////////////////////////////////////////////////
  66. // CEx75View diagnostics
  67. #ifdef _DEBUG
  68. void CEx75View::AssertValid() const
  69. {
  70. CView::AssertValid();
  71. }
  72. void CEx75View::Dump(CDumpContext& dc) const
  73. {
  74. CView::Dump(dc);
  75. }
  76. CEx75Doc* CEx75View::GetDocument() // non-debug version is inline
  77. {
  78. ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CEx75Doc)));
  79. return (CEx75Doc*)m_pDocument;
  80. }
  81. #endif //_DEBUG
  82. /////////////////////////////////////////////////////////////////////////////
  83. // CEx75View message handlers
  84. void CEx75View::OnColordialog() 
  85. {
  86. CColorDialog colordialog(crColor);
  87. if(colordialog.DoModal()==IDOK)
  88. {
  89. crColor=colordialog.GetColor();
  90. }
  91. Invalidate();
  92. }