请问在vs2005中怎么改变对话框的背景颜色?

来源:百度知道 编辑:UC知道 时间:2024/07/03 00:05:02
我建的工程是“单文档”工程,里边加了很多对话框,我想把主框架和对话框都改一下颜色,请问怎么实现?本人菜鸟,最好把步骤说明白,详细,调试过了我就给分

为所有对话框类添加WM_CTLCOLOR消息函数,然后在里面添加代码如下:
HBRUSH CPASSWOEDDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(nCtlColor==CTLCOLOR_EDIT)
{
//pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(0,0,0));
pDC->SetBkColor(RGB(160,189,239));
HBRUSH b=CreateSolidBrush(RGB(160,189,239));
return b;
}
else if(nCtlColor==CTLCOLOR_STATIC)
{
pDC->SetTextColor(RGB(0,0,0));
pDC->SetBkColor(RGB(0,133,239));
HBRUSH b=CreateSolidBrush(RGB(0,133,239));
return b;
}
else if(nCtlColor==CTLCOLOR_DLG)
{
pDC->SetTextColor(RGB(0,0,0));
pDC->SetBkColor(RGB(160,180,220));
HBRUSH b=CreateSolidBrush(RGB(0,133,239));
return b;
}
// TODO: Change any attributes of the DC here

// TODO: Return a different brush if the default is not desired
return hbr;