1.vs2005,右键对话框属性-》消息(图标)-》WM_CTLCOLOR-》添加OnCtlColor
2.添加代码
HBRUSH CInfoBridgeDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何属性
if (pWnd->GetDlgCtrlID() == IDC_STATIC_ConfigInfo)//静态文本设置红色
{
//pDC->SetTextColor(RGB(255, 255, 0));
//pDC->SelectObject(&control_font);
pDC->SetTextColor(RED);
pDC->SetBkMode(TRANSPARENT);
return m_Brush;
}
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}
3.包含头文件
// InfoBridgeDlg.h : header file
//
#pragma once
#include "Colorbtn.h"
#include "Uxtheme.h"
#pragma comment(lib, "Uxtheme.lib")
4.在OnInitDialog()中加上下面代码
SetWindowTheme(GetDlgItem(IDC_STATIC_ConfigInfo)->GetSafeHwnd(), L"", L"");
welcome to discuss Q_group:(289186279)