您的位置:首页 > 编程语言 > C语言/C++

C++如何修改SDI程序的默认背景颜色

2007-08-26 16:00 435 查看
使用MFC建立的SDI应用程序默认为白色背景,你可以按下列步骤修改为其他背景颜色。

Ctrl+W pops up the MFC classwizard property sheet.

Select the Message Maps tab.

From the drop-down list box under the Class Name static control, select the CxxxView option (xxx = Your project's name; for example, CNnoyeView).

Make sure CxxxView is also selected in the Object ID's list box.

Select the WM_ERASEBKGND option in the Messages list box.

Click the Add Function button. The Class Wizard adds the "OnEraseBkgnd" member function.

Click the Edit Code button. Add the following code before the return CView::OnEraseBkgnd(pDC) statement.

CBrush brNew(RGB(0,0,255));  //Creates a blue brush
CBrush* pOldBrush = (CBrush*)pDC->SelectObject(&brNew);

CRect rc;
pDC->GetClipBox(rc); // Gets the co-ordinates of the client
// area to repaint.
pDC->PatBlt(0,0,rc.Width(),rc.Height(),PATCOPY);
// Repaints client area with current brush.
pDC->SelectObject(pOldBrush);

return TRUE;    // Prevents the execution of return
// CView::OnEraseBkgnd(pDC) statement
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: