请教一个MFC填充背景色的问题

BOOL C2Dlg::OnEraseBkgnd(CDC* pDC)
{
GetWindowRect(rect);

pDC->SelectObject(fff);

pDC->Rectangle(rect);
return CDialogEx::OnEraseBkgnd(pDC);

}
我想一调试程序就背景显示指定的颜色,用CCLIENTDC可以,但是用这个函数传进来的
PDC好像不行,请问下是为什么呀?CBRUSH fff已经在初始化函数中定义了。

试下这个:
GetWindowRect(rect);
//转成屏幕坐标
ClientToScreen(rect);

CWnd* pWnd = pDC->GetWindow();

pWnd->ScreenToClient(rect);

pDC->SelectObject(fff);

pDC->Rectangle(rect);
return CDialogEx::OnEraseBkgnd(pDC);

为什么不在onpaint里面画呢

BOOL rt = CDialogEx::OnEraseBkgnd(pDC);

GetWindowRect(rect);
CBrush br(RGB(0x00, 0x0F, 0xFF));
CBrush *pOldBr = pDC->SelectObject(&rb);
pDC->Rectangle(rect);
pDC->SelectObject(pOldBr);

return rt;
试试