IDEView.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. // 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面
  2. // (“Fluent UI”)。该示例仅供参考,
  3. // 用以补充《Microsoft 基础类参考》和
  4. // MFC C++ 库软件随附的相关电子文档。
  5. // 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
  6. // 若要了解有关 Fluent UI 许可计划的详细信息,请访问
  7. // https://go.microsoft.com/fwlink/?LinkId=238214.
  8. //
  9. // 版权所有(C) Microsoft Corporation
  10. // 保留所有权利。
  11. // IDEView.h: CIDEView 类的接口
  12. //
  13. #pragma once
  14. class CIDEView : public CScrollView
  15. {
  16. protected: // 仅从序列化创建
  17. CIDEView() noexcept;
  18. DECLARE_DYNCREATE(CIDEView)
  19. // 特性
  20. public:
  21. CIDEDoc* GetDocument() const;
  22. Mat m_img;
  23. void DrawMat(Mat & img, CDC *pDC);
  24. void DrawGrid(CDC *pDC);
  25. void DrawImage(Mat & img, CDC *pDC);
  26. // 操作
  27. public:
  28. // 重写
  29. public:
  30. virtual void OnDraw(CDC* pDC); // 重写以绘制该视图
  31. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  32. protected:
  33. virtual void OnInitialUpdate(); // 构造后第一次调用
  34. virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
  35. virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
  36. virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
  37. // 实现
  38. public:
  39. virtual ~CIDEView();
  40. #ifdef _DEBUG
  41. virtual void AssertValid() const;
  42. virtual void Dump(CDumpContext& dc) const;
  43. #endif
  44. protected:
  45. // 生成的消息映射函数
  46. protected:
  47. afx_msg void OnFilePrintPreview();
  48. afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
  49. afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
  50. DECLARE_MESSAGE_MAP()
  51. public:
  52. virtual void OnPrepareDC(CDC* pDC, CPrintInfo* pInfo = NULL);
  53. };
  54. #ifndef _DEBUG // IDEView.cpp 中的调试版本
  55. inline CIDEDoc* CIDEView::GetDocument() const
  56. { return reinterpret_cast<CIDEDoc*>(m_pDocument); }
  57. #endif