首先在窗体上添加WM_CTLCOLOR消息,这时就会有一个OnCtlColor消息响应函数。
下面是我的OnCtlColor函数里的代码
HBRUSH CMyMailDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何属性
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
switch (pWnd->GetDlgCtrlID())
{
//针对ID为IDC_CTL1、IDC_CTL2和IDC_CTL3的控件进行同样的设置
case IDC_STATICx:
case IDC_STATICx1:
case IDC_STATICx2:
case IDC_STATICx3:
case IDC_STATICx4:
case IDC_STATICx5:
case IDC_STATICx6:
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,0, 0)); //将颜色设置为红色
return (HBRUSH)GetSysColorBrush(COLOR_BTNFACE);
}
default:
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}
return hbr;
}