您的位置:首页 > 其它

透明画刷的使用

2015-11-14 23:09 288 查看
透明画刷的使用
代码部分
CRect rect;
GetClientRect(rect);

pDC ->SetMapMode(MM_ANISOTROPIC);
pDC ->SetWindowExt(rect.Width(), rect.Height());
pDC ->SetViewportExt(rect.Width(), -rect.Height());
pDC ->SetViewportOrg(rect.Width()/2, rect.Height()/2);

rect.OffsetRect(-rect.Width()/2, -rect.Height()/2);
rect.DeflateRect(100, 100);

CBrush NewBrush, *pOldBrush;
pOldBrush = (CBrush *)pDC ->SelectStockObject(NULL_BRUSH);

int r = rect.Height()/2;
CRect rect1(CPoint(-r, -r), CPoint(r, r));

pDC ->Ellipse(rect1);
pDC ->Ellipse(rect);
pDC ->Rectangle(rect);

pDC ->SelectObject(pOldBrush);
关键部分
CBrush NewBrush, *pOldBrush;
pOldBrush = (CBrush *)pDC ->SelectStockObject(NULL_BRUSH);
有个类型强制转换。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: