博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VC/MFC如何设置对话框背景颜色
阅读量:7113 次
发布时间:2019-06-28

本文共 1140 字,大约阅读时间需要 3 分钟。

VC/MFC如何设置对话框背景颜色
2007-06-19 19:57

1.

重载OnCtlColor    (CDC*    pDC,    CWnd*    pWnd,    UINT    nCtlColor),即WM_CTLCOLOR消息。   

   ----    ①在CExampleDlgDlg的头文件中,添加一CBrush的成员变量:     
   class    CExampleDlgDlg    :    public    CDialog   
   {...   
   protected:   
   CBrush    m_brush;     
   ...   
   };   
   ----    ②在OnInitDialog()函数中添加如下代码:     
   BOOL    CExampleDlgDlg::OnInitDialog()     
   {   
   ...   
   //    TODO:    Add    extra    initialization    here   
   m_brush.CreateSolidBrush(RGB(0,    255,    0));    //    生成一绿色刷子     
   ...   
   }     
   ----    ③利用ClassWizard重载OnCtlColor(…),即WM_CTLCOLOR消息:     
   HBRUSH    CExampleDlgDlg::OnCtlColor   
   (CDC*    pDC,    CWnd*    pWnd,    UINT    nCtlColor)     
   {   
   /*   
   **    这里不必编写任何代码!   
   **下行代码要注释掉   
   **    HBRUSH    hbr    =    CDialog::OnCtlColor(pDC,    pWnd,    nCtlColor);   
   */   
   return    m_brush;        //返加绿色刷子   
   }

2.

   修改对话框的OnPaint,在else中添加如下代码   

           CPaintDC    dc(this);   
           CRect    rect;     
           GetClientRect(rect);     
           dc.FillSolidRect(rect,    RGB(0,0,0));     
           CDialog::OnPaint();

3.

在对话框的应用类(App)的.cpp的Initinstance()中加入代码:   

                   //加在int    nResponse=dlg.DoModal();   
                   前一个RGB设置背景色,第二个设置字体颜色   
   SetDialogBkColor(RGB(0,0,255),RGB(0,255,0));

4.

1.在对话框类中添加成员变量:   

   public:   
           CBrush          m_brushBlue;   
    
   2.在对话框类的OnInitDialog()中添加代码:   
   m_brushBlue.CreateSolidBrush(RGB(0,0,255));   
    
   3.用ClassWizard在对话框类中添加成员函数OnCtlCollor(),并在其中添加代码:   
   if(nCtlColor==CTLCOLOR_DLG)   
   return    m_brushBlue;

转载地址:http://qzghl.baihongyu.com/

你可能感兴趣的文章
GoLand中的指针操作 * 和 &
查看>>
116. Populating Next Right Pointers in Each Node
查看>>
webpack 最简打包结果分析
查看>>
NLPIR:数据挖掘深度决定大数据应用价值
查看>>
laravel接入Consul
查看>>
Flex 布局教程
查看>>
GET和POST两种基本请求方法的区别
查看>>
Webpack4 学习笔记 - 01:webpack的安装和简单配置
查看>>
二)golang工厂模式
查看>>
React 教程:快速上手指南
查看>>
Python 的 heapq 模块源码分析
查看>>
Jitsi快捷安装
查看>>
区块链技术的基本特点
查看>>
阿里云容器服务DaemonSet实践
查看>>
一个游戏拨账系统的数据库结算设计
查看>>
Kafka Network层解析
查看>>
css加载会造成阻塞吗?
查看>>
由一个绝对定位引发overflow:auto滚动问题产生的关于包含块(containing block)的思考...
查看>>
CS-231N-斯坦福李飞飞机器视觉课(Cydiachen版笔记+感悟)
查看>>
推荐一个有趣的Chrome扩展程序-查看任意网站的开发技术栈
查看>>