1.消息响应
BEGIN_MESSAGE_MAP(CMyDlg, CDialogEx)
ON_WM_CTLCOLOR()
END_MESSAGE_MAP()
2.在OnInitDialog中设置画刷子
m_brushGreen.CreateSolidBrush(RGB(0,255,0));//画刷为绿色
3.重载OnCtlColor
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if (pWnd->GetDlgCtrlID() == IDC_STATIC){ //为静态文本框控件
//pDC->SetBkMode(TRANSPARENT);
pDC->SetBkColor(RGB(0255,0));//背景色为绿色
return m_brushGreen;
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
编译后Debug模式下生效,Release模式下不生效,什么原因?