小生在学习过程中遇到一段代码。
功能是画一条线!
void CStrokeView::OnMouseMove(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default
if(GetCapture()!=this)
return;
m_pStrokeCur->m_pointArray.Add(point); CClientDC dc(this); CPen* pPenCur=dc.SelectObject( GetDocument()->GetCurPen() );
dc.MoveTo(m_ptPrev);
dc.LineTo(point);
dc.SelectObject( pPenCur );//!!!!!!!!!!!!!!!!!!!
m_ptPrev=point; return;
}
有一个地方不清楚!
为什么画完一条线之后,要再次dc.SelectObject();呢?我曾经试着,把这句话注释掉,没有什么问题!请各位大虾,给个说法!谢谢先!