您的位置:首页 > 其它

VC更改View背景色的几种方式

2006-11-16 15:24 435 查看
1。添加消息映射OnEraseBkgnd,


BOOL CSampleView::OnEraseBkgnd(CDC* pDC)




...{


// 设置所要求背景色的刷子


CBrush backBrush(RGB(255, 128, 128));


// 保存旧刷子


CBrush* pOldBrush = pDC->SelectObject(&backBrush);


CRect rect;


pDC->GetClipBox(&rect); // 擦除所需的区域


pDC->PatBlt(rect.left, rect.top, rect.Width(), rect.Height(), PATCOPY);


pDC->SelectObject(pOldBrush);


return TRUE;


}




2。添加消息映射OnDraw


void CScrollSampleView::OnDraw(CDC* pDC)




...{


CScrollSampleDoc* pDoc = GetDocument();


ASSERT_VALID(pDoc);


if (!pDoc)


return;


// TODO: 在此处为本机数据添加绘制代码


CRect rc;


GetClientRect(&rc);


CBrush br(RGB(0,0,0));


pDC->FillRect(&rc,&br);


ReleaseDC(pDc);


}

OnEraseBkgnd先于OnDraw被触发
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: