16,473
社区成员
发帖
与我相关
我的任务
分享
CClientDC dc(this);
CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));
CBrush *pOldBrush=dc.SelectObject(pBrush);
dc.Rectangle(CRect(m_ptOrigin,point));
dc.SelectObject(pOldBrush);//这句为了还原brush,如果每次画之前都有SelectObject的话,就看不出效果,
//如果画之前没有SelectObject的话,就会按照最后一次SelectObject的brush去画
为了能使用我们自己所创建的笔对象,必须先将它选入DC,这可以调用设备上下文类CDC的成员函数SelectObject来完成:
CPen* SelectObject( CPen* pPen );
该函数的返回值为指向原来笔对象的指针(一般将其保存下来,供下次选出新笔时使用)。例如:
pOldPen = pDC->SelectObject(&pen);