自定义控件文本颜色和控件背景

(1)CXXXDlg增加刷子变量

CBrush m_brush;                    //刷子

(2)OnInitDialog方法中初始化刷子

m_brush.CreateSolidBrush(RGB(0x83,0xa5,0xd2));

(2)实现窗口的OnCtlColor函数

HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
    HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

    if(pWnd->GetDlgCtrlID() == IDC_STATIC_VIDEO)
    {
        pDC->SetBkMode(TRANSPARENT);
        return m_brush;//返回自定义刷子刷子
    }
    if(pWnd->GetDlgCtrlID() == IDC_STATIC_ALARM_TXT)
    {
        pDC->SetTextColor(RGB(0xe6,0x00,0x12));//自定义控件文本颜色
    }
    if(pWnd->GetDlgCtrlID() == IDC_STATIC_WNDID)
    {
        pDC->SetTextColor(RGB(0x83,0xa5,0xd2));//自定义控件文本颜色
    }

    // TODO:  在此更改 DC 的任何属性

    // TODO:  如果默认的不是所需画笔,则返回另一个画笔
    return hbr;
}

你可能感兴趣的:(自定义控件)