STL的心得(4)–運用(MFC)

來源:互聯網
上載者:User

用MFC寫一個簡單的畫圖程式(恐怕這個應該是大家更加註意的)

在這裡只貼出部分代碼:

下面原始碼,可以直接運行(VC6 MFC)(關於其整個工程檔案可以到www.confach.533.net去Download),如果你找不到,可以直接按上面的連絡方式與我Mail,我會儘快給你發過去,大家一起學習)

void CSTLMFCTestView::OnLButtonDown(UINT nFlags, CPoint point)

{

 // TODO: Add your message handler code here and/or call default

 SetCapture();

 if(mPointVector.size()!=0)

 {  

  CClientDC dc(this);

     CSTLMFCTestDoc* pDoc=this->GetDocument();

  CPen lNewPen(PS_SOLID,pDoc->m_iPenWidth,pDoc->mColor);

  CPen* pOldPen=dc.SelectObject(&lNewPen);

  

  dc.MoveTo((CPoint)mPointVector[mPointVector.size()-1]);

        dc.LineTo(point);

  dc.SelectObject(pOldPen);

  pDoc->SetModifiedFlag(TRUE);

  

 }

 mPointVector.push_back(point);

 CView::OnLButtonDown(nFlags, point);

}

void CSTLMFCTestView::OnLButtonUp(UINT nFlags, CPoint point)

{

 // TODO: Add your message handler code here and/or call default

 if(GetCapture()==this)

  ReleaseCapture();

 CView::OnLButtonUp(nFlags, point);

}

void CSTLMFCTestView::OnMouseMove(UINT nFlags, CPoint point)

{

// // TODO: Add your message handler code here and/or call default

 if((nFlags&MK_LBUTTON)!=MK_LBUTTON)

 {

  return;

 }

 if(mPointVector.size()!=0)

 {  

  CClientDC dc(this);

     CSTLMFCTestDoc* pDoc=this->GetDocument();

  CPen lNewPen(PS_SOLID,pDoc->m_iPenWidth,pDoc->mColor);

  CPen* pOldPen=dc.SelectObject(&lNewPen);

  

  dc.MoveTo((CPoint)mPointVector[mPointVector.size()-1]);

        dc.LineTo(point);

  dc.SelectObject(pOldPen);

  pDoc->SetModifiedFlag(TRUE);

  

 }

 mPointVector.push_back(point);

 CView::OnMouseMove(nFlags, point);

}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.