zoukankan      html  css  js  c++  java
  • VS2008给对话框添加背景颜色

    第一种方法如下:

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

    1         //改变对话框背景颜色
    2         CRect rect;
    3         CPaintDC dc(this);
    4         GetClientRect(rect);
    5         dc.FillSolidRect(rect,RGB(244,247,252));
    6         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

     1 HBRUSH CMyTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
     2 {
     3 HBRUSH hbr = __super::OnCtlColor(pDC, pWnd, nCtlColor);
     4 
     5 // TODO: 在此更改 DC 的任何属性
     6 
     7 
     8 // TODO: 如果默认的不是所需画笔,则返回另一个画笔
     9 return m_brush;
  • 相关阅读:
    cookie、session和会话保持
    常见的一些专业术语的概念
    JS中的执行机制(setTimeout、setInterval、promise、宏任务、微任务)
    加密和解密
    ASCII 、UTF-8、Unicode编码
    localhost、127.0.0.1、本机ip、0.0.0.0 的区别
    使用Bootstrap框架的HTML5页面模板
    js判断是否在微信浏览器中打开
    js获取url的参数
    js动态生成下拉列表
  • 原文地址:https://www.cnblogs.com/qiwu1314/p/9140047.html
Copyright © 2011-2022 走看看