科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件用VC实现小型矢量图形系统的开发

用VC实现小型矢量图形系统的开发

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文旨在通过对一个小型矢量图形系统全面讲述而达到了解软件从设计到实现需要解决的问题

作者:曹勇刚 来源:yesky 2007年11月16日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
 3). 视图(CDrawGraphView)接收用户的对特定图形对象的操作并绘制图形对象

class CDrawGraphView : public CView

{

 protected: // create from serialization only

  CDrawGraphView();

  DECLARE_DYNCREATE(CDrawGraphView)

  // Attributes

 public:

  CDrawGraphDoc* GetDocument();

  // Operations

  public:

   // Overrides

   // ClassWizard generated virtual function overrides

   //{{AFX_VIRTUAL(CDrawGraphView)

  public:

   virtual void OnDraw(CDC* pDC); // overridden to draw this view

   virtual BOOL PreCreateWindow(CREATESTRUCT& cs);

  protected:

   virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);

   virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
 
   virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);

  //}}AFX_VIRTUAL

  // Implementation

  public:

   virtual ~CDrawGraphView();

   #ifdef _DEBUG

    virtual void AssertValid() const;

    virtual void Dump(CDumpContext& dc) const;

   #endif

  protected:

   // Generated message map functions

  protected:

   CPoint m_ptPrev;//前面一次点击的位置

   CGraph* m_curGraph;//当前正在绘制的图形对象

   state bdrawbegin;//绘制状态

   //{{AFX_MSG(CDrawGraphView)

   afx_msg void OnLButtonDown(UINT nFlags, CPoint point);

   afx_msg void OnMouseMove(UINT nFlags, CPoint point);

   afx_msg void OnRButtonDown(UINT nFlags, CPoint point);

   afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);

   afx_msg void OnLButtonUp(UINT nFlags, CPoint point);

  //}}AFX_MSG

  DECLARE_MESSAGE_MAP()

};

  视图类在界面上改得少,主要是处理鼠标事件和调用各图形对象的绘制方法,实现上也尽量统一,充分利用图形对象的多态性。
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章