takeiteasy 发表于 2014-8-4 08:58:40

修改Static控件的字体颜色

首先在窗体上添加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;
}
页: [1]
查看完整版本: 修改Static控件的字体颜色