C++ MFC 如何画一个有透明填充色的矩形,求代码 20
2个回答
展开全部
// 假设已经有了一个 CDC *pDC
// 获取一个透明画刷,并将其选入设备描述表
CBrush *pBrush = CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));
CBrush *pOldBrush = pDC->SelectObject(pBrush);
// 使用 CDC::Rectangle 函数绘制矩形,略
// 还原设备描述表
pDC->SelectObject(pOldBrush);
更多追问追答
追问
那该如何指定透明填充色为蓝色呢
追答
创建蓝色画刷即可,代码如下:
void CDrawView::OnDraw(CDC* pDC)
{
CDrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CBrush brush;
brush.CreateSolidBrush(RGB(0, 0, 255));
CBrush *pOldBrush = pDC->SelectObject(&brush);
pDC->Rectangle(100, 100, 400, 200);
pDC->SelectObject(pOldBrush);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询