Graph.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef __GRAPH_HEAD__
  2. #define __GRAPH_HEAD__
  3. /************************************************************************/
  4. /* Copyright (C), 2016-2020, [IT], 保留所有权利;
  5. /* 模 块 名:图片(不是平常说的图片,片特指在同一个区域内容的所有图元集合)类,
  6. 由图元组成的一张图域;
  7. /* 描 述:;
  8. /*
  9. /* 版 本:[V];
  10. /* 作 者:[IT];
  11. /* 日 期:[5/9/2016];
  12. /*
  13. /*
  14. /* 注 意:;
  15. /*
  16. /* 修改记录:[IT];
  17. /* 修改日期:;
  18. /* 修改版本:;
  19. /* 修改内容:;
  20. /************************************************************************/
  21. #define GRAPH_DEBUG 1
  22. #define OCX_MAX_NUM 20
  23. class CGraph
  24. {
  25. public:
  26. BYTE m_Type; // 类型;
  27. CSize m_sizePic; // 显示区域的大小;
  28. CSize m_sizeGrid; // 显示区域的网格大小;
  29. BOOL m_bGrid; // 是否显示网格;
  30. COLORREF m_clrBack; // 显示区域的背景色;
  31. CDrawObjList m_DrawObjList; // 显示区域的图元集合;
  32. public:
  33. CView* m_pView; // 关联的CView对象;
  34. CString m_strPicFile; // 显示区域要加载的图元文件;
  35. protected:
  36. void ClearDrawList();
  37. public:
  38. CGraph(CSize size);
  39. ~CGraph(void);
  40. // 设置图元文件路径;
  41. void SetPicFile(IN LPCTSTR lpPicPath);
  42. // 设置关联的CView对象;
  43. void SetView(IN CView* pView);
  44. // 加载图元文件;
  45. BOOL Load();
  46. // 存储在CView对象上的变化到图元文件中;
  47. void Store();
  48. // 画图元;
  49. CRect Draw(IN CDC* pDC, IN CString &sOCXPath, IN int &iOcxIndex, IN BOOL bPrint = FALSE);
  50. // 打印在CView对象上的所有图元;
  51. void Print(IN CDC* pDC);
  52. // 刷新图元;
  53. void Fresh();
  54. // 刷新所有图元;
  55. void RefreshAllVars();
  56. };
  57. #endif // __GRAPH_HEAD__