另外一个绘图问题MFC / GDI大师那里......: - )
我正在使用MFC,而且我正在使用CDC对象进行绘图。这很好。
但是现在我想绘制一个带圆角的矩形,这条线宽几个像素。但我不希望任何填充发生!有一种方法CDC :: RoundRect - 我只是设置了我想要的笔,并用这支笔得到一个漂亮的圆角矩形。但CDC :: RoundRect也用当前画笔填充矩形。
有没有办法画线,没有填充?我找不到任何其他方法?或者我可以创建某种" null刷"这不会改变矩形中间的内容吗?
我非常感谢你的一些好建议!
/来自瑞典的安德斯
答案 0 :(得分:9)
在绘制圆角矩形之前,只需选择一个NULL画笔,如
CPen pen;
CBrush* pOldBrush;
CPen* pOldPen;
if (!pen.CreatePenIndirect(&m_logpen))
return;
pOldBrush = (CBrush*)pDC->SelectStockObject(NULL_BRUSH);
pOldPen = pDC->SelectObject(&pen);
pDC->RoundRect(m_rect, m_roundness);
pDC->SelectObject(pOldBrush);
pDC->SelectObject(pOldPen);