你在可以处理消息映射ON_WM_CTLCOLOR(),具体怎么用也不是很难的,我给你个代码示例,这些函数都是见名知意的,你看看吧!
HBRUSH CColorDlgTextDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
//HBRUSH m_brush = ::CreateSolidBrush(RGB(255, 0, 0));
// TODO: 在此更改 DC 的任何属性
if(pWnd->GetDlgCtrlID()==IDC_STATIC_TITLE)//在这里判断特定的控件
{
pDC->SetTextColor(RGB(255,255,0));
pDC->SetBkMode(TRANSPARENT);
//hbr = m_brush;
}
if(pWnd->GetDlgCtrlID()==IDC_EDIT1)//同上,也是判断特定的控件
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(111,111,111));
}
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}