Day10View.cpp
上传用户:z_mail1980
上传日期:2007-06-01
资源大小:647k
文件大小:3k
源码类别:

SNMP编程

开发平台:

Visual C++

  1. // Day10View.cpp : implementation of the CDay10View class
  2. //
  3. #include "stdafx.h"
  4. #include "Day10.h"
  5. #include "Line.h"
  6. #include "MainFrm.h"
  7. #include "Day10Doc.h"
  8. #include "Day10View.h"
  9. #ifdef _DEBUG
  10. #define new DEBUG_NEW
  11. #undef THIS_FILE
  12. static char THIS_FILE[] = __FILE__;
  13. #endif
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CDay10View
  16. IMPLEMENT_DYNCREATE(CDay10View, CView)
  17. BEGIN_MESSAGE_MAP(CDay10View, CView)
  18. //{{AFX_MSG_MAP(CDay10View)
  19. ON_WM_LBUTTONDOWN()
  20. ON_WM_LBUTTONUP()
  21. ON_WM_LBUTTONDBLCLK()
  22. ON_WM_MOUSEMOVE()
  23. //}}AFX_MSG_MAP
  24. // Standard printing commands
  25. ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
  26. ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
  27. ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
  28. END_MESSAGE_MAP()
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CDay10View construction/destruction
  31. CDay10View::CDay10View()
  32. {
  33. // TODO: add construction code here
  34. }
  35. CDay10View::~CDay10View()
  36. {
  37. }
  38. BOOL CDay10View::PreCreateWindow(CREATESTRUCT& cs)
  39. {
  40. // TODO: Modify the Window class or styles here by modifying
  41. //  the CREATESTRUCT cs
  42. return CView::PreCreateWindow(cs);
  43. }
  44. /////////////////////////////////////////////////////////////////////////////
  45. // CDay10View drawing
  46. void CDay10View::OnDraw(CDC* pDC)
  47. {
  48. CDay10Doc* pDoc = GetDocument();
  49. ASSERT_VALID(pDoc);
  50. // TODO: add draw code for native data here
  51. int liCount=pDoc->GetLineCount();
  52. if(liCount)
  53. {
  54. int liPos;
  55. CLine *lptLine;
  56. for(liPos=0;liPos<liCount;liPos++)
  57. {
  58. lptLine=pDoc->GetLine(liPos);
  59. lptLine->Draw(pDC);
  60. }
  61. }
  62. }
  63. /////////////////////////////////////////////////////////////////////////////
  64. // CDay10View printing
  65. BOOL CDay10View::OnPreparePrinting(CPrintInfo* pInfo)
  66. {
  67. // default preparation
  68. return DoPreparePrinting(pInfo);
  69. }
  70. void CDay10View::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  71. {
  72. // TODO: add extra initialization before printing
  73. }
  74. void CDay10View::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  75. {
  76. // TODO: add cleanup after printing
  77. }
  78. /////////////////////////////////////////////////////////////////////////////
  79. // CDay10View diagnostics
  80. #ifdef _DEBUG
  81. void CDay10View::AssertValid() const
  82. {
  83. CView::AssertValid();
  84. }
  85. void CDay10View::Dump(CDumpContext& dc) const
  86. {
  87. CView::Dump(dc);
  88. }
  89. CDay10Doc* CDay10View::GetDocument() // non-debug version is inline
  90. {
  91. ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CDay10Doc)));
  92. return (CDay10Doc*)m_pDocument;
  93. }
  94. #endif //_DEBUG
  95. /////////////////////////////////////////////////////////////////////////////
  96. // CDay10View message handlers
  97. void CDay10View::OnLButtonDown(UINT nFlags, CPoint point) 
  98. {
  99. // TODO: Add your message handler code here and/or call default
  100. SetCapture();
  101. m_ptPrevP=point;
  102. CView::OnLButtonDown(nFlags, point);
  103. }
  104. void CDay10View::OnLButtonUp(UINT nFlags, CPoint point) 
  105. {
  106. // TODO: Add your message handler code here and/or call default
  107. if(GetCapture()==this)
  108. {
  109. ReleaseCapture();
  110. }
  111. CView::OnLButtonUp(nFlags, point);
  112. }
  113. void CDay10View::OnMouseMove(UINT nFlags, CPoint point) 
  114. {
  115. // TODO: Add your message handler code here and/or call default
  116. if((nFlags&MK_LBUTTON)==MK_LBUTTON)
  117. {
  118. if(GetCapture()==this)
  119. {
  120. CClientDC dc(this);
  121. CLine *pLine=GetDocument()->AddLine(m_ptPrevP,point);
  122. pLine->Draw(&dc);
  123. m_ptPrevP=point;
  124. }
  125. }
  126. CView::OnMouseMove(nFlags, point);
  127. }