MFC窗口的颜色和字体的设置

本文介绍了如何在MFC应用中改变对话框背景色、控件颜色及字体。通过设置WM_CTLCOLOR消息响应函数可以改变对话框底色和特定控件颜色,如设置IDC_LINE_STYLE控件的背景色和文字颜色。对于静态文本控件IDC_TEXT,可以通过OnPaint消息响应函数选择特定字体。此外,为了改变按钮如OK的文字颜色,需要创建自定义CButton子类并重写DrawItem函数,实现文字颜色为红色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ou
1、改变对话框的底色
在对话框的类中添加一个 private : CBrush m_brush;的成员变量。在类的构造函数中添加如下代码:
m_brush.CreateSolidBrush(RGB(0,0,255));    //初始化为蓝色
为对话框添加一个WM_CTLCOLOR消息响应函数,专门为控件着色的消息响应函数,代码如下:
HBRUSH CSettingDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
 HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
 //return hbr;                        /*这里特意将系统返回的画刷屏蔽*/
 return m_brush;                      /*返回自己制定的蓝色画刷*/
}
 
2、如果我们要设置某一个对话框控件的底色和文字颜色时只要将上面return m_brush;改为:
 if (pWnd->GetDlgCtrlID()==IDC_LINE_STYLE)    /*如果控件的名称为IDC_LINE_STYLE*/
 {
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值