对话框中设置静态文本框字体及颜色

1、添加对话框类声明中字体和颜色变量

public:
	CFont m_myFont;		// 字体对象
	COLORREF m_myColor;	// 颜色对象


2、在对话框初始化函数OnInitDialog()中对字体和颜色进行初始化

	// TODO: 在此添加额外的初始化代码

	m_myFont.CreatePointFont(150, _T("华文彩云"));
	m_myColor = RGB(255, 0, 255);


3、为对话框类添加WM_CTLCOLOR消息响应函数,并在其消息响应函数OnCtlColor()中添加代码

	afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);	// 消息响应函数声明
	ON_WM_CTLCOLOR()							// 消息映射
HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)		// 消息响应函数实现
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO:  在此更改 DC 的任何属性
	if(pWnd->GetDlgCtrlID()==IDC_STATIC_WEEK)
	{
		pDC->SelectObject(&m_myFont);	// 设置字体
		pDC->SetTextColor(m_myColor);	// 设置颜色
	}
	// TODO:  如果默认的不是所需画笔,则返回另一个画笔
	return hbr;
}



 

原文地址:https://www.cnblogs.com/zcube/p/4194554.html