第一种方法如下:

在对话框OnPaint()函数中添加代码

         //改变对话框背景颜色
CRect rect;
CPaintDC dc(this);
GetClientRect(rect);
dc.FillSolidRect(rect,RGB(,,));
dc.FillPath();

在RGB中选择自己喜欢的颜色,编译运行

第二种方法如下:

给对话框添加消息处理程序OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)

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

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

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

该消息相应函数中,首先调用对话框基类,:CDialog的OnStlColor函数,返回一个画刷句柄(hbr),然后该函数直接返回这个画刷句柄。

之后,系统就会使用这个画刷句柄绘制对话框及其子空间的背景,如果想要改变对话框的背景色,只需要自定义一个画刷,然后让OnCtlColor函数

返回这个画刷句柄即可。

首先为该类定义一个CBrush类型的私有成员变量:m_brush,并在其构造函数中利用CreateSolidBrush函数将该画刷初始化为一个颜色的画刷

m_brush.CreateSolidBrush(RGB(244,247,252));  //新建画刷并指定颜色

然后在OnCtlColor响应函数返回上述自定义画刷:m_brush

 HBRUSH CMyTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = __super::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何属性 // TODO: 如果默认的不是所需画笔,则返回另一个画笔
return m_brush;

最新文章

  1. mysql锁
  2. How to bind data to a user control
  3. Apache禁止目录访问的方法
  4. 编译php时的一个脚本
  5. aop前传之代理
  6. HttpSessionBindingListener和HttpSessionAttributeListener区别 - gengkunpeng的专栏 - 博客频道 - CSDN.NET
  7. PHP克隆魔术方法
  8. STL之algorithm、numeric、functional
  9. 辛星浅析跨域传输的CORS解决方式
  10. Android核心基础(十)
  11. ViewPager不能高度自适应?height=wrap_content 无效解决办法
  12. 浅谈身为小白学习Linux系统的四点实用建议
  13. 离线缓存 manifest
  14. 第8章 概述 - Identity Server 4 中文文档(v1.0.0)
  15. 小程序 components 下的组件引入字体图标时样式不生效
  16. LOL新版符文 怎么查看队友的符文配置?
  17. Gitlab8.5安装后邮件发送不成功的解决过程
  18. 陌上花开——CDQ分治
  19. oracle-sql分析练习
  20. leetcode1025

热门文章

  1. mysql 控制台环境下查询中文数据乱码,插入、更新中文数据不成功
  2. JAVA传输概念
  3. UITableView 自带编辑删除 自己定义button
  4. gdb调试段错误及使用
  5. 隐私问题成O2O绊脚石,加强行业监管迫在眉睫
  6. MVC5中使用jQuery Post 二维数组和一维数组到Action
  7. 推荐一套免费跨平台的delphi 哈希及加密算法库
  8. 【BZOJ3197】[Sdoi2013]assassin 树同构+动态规划+KM
  9. EasyHLS实现将IPCamera摄像机的RTSP转HLS直播输出
  10. VLC RTP Over TCP