注:不是text背景。
处理WM_CTLCOLOR
应该用以下方式:
此成员函数返回值就是控件的背景刷:
HBRUSH CStaticEditView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CFormView::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(pWnd->GetDlgCtrlID() == IDC_EDIT_SCHOOL)
{
hbr = CreateSolidBrush(RGB(250,250,130))
}
return hbr;
}
HBRUSH CTabInspRes::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd->GetDlgCtrlID() == 你的控件id)
{
::DeleteObject(hbr);
hbr = ::CreateSolidBrush(RGB(,,));//控件底色
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(文字颜色);
}
return hbr;
}
同意楼上两位!