码迷,mamicode.com
首页 > 编程语言 > 详细

美化MFC 之调整静态文本的颜色 字体。 用于添加公司标题 联系方式 口号等数据

时间:2015-10-04 23:35:20      阅读:439      评论:0      收藏:0      [点我收藏+]

标签:

很多人都觉得自己的程序的界面不那么美观,往往VC默认产生的对话框比较单调,

因此很多人往往找到很多其它的控件对对话框进行美化修饰,

例如给静态控件设置字体,设置背景颜色等等, 其实这些完全可以由VC自己的WM_CTLCOLOR消息来完成!

一个对话框 假设叫A。 我们可以在他的 WM_CTLCOLOR 里面做一些事情 来达到 ,美化节目的效果。

下面代码就是调整 静态文本的颜色。  

//对话框 WM_CTLCOLOR 消息的响应函数

//OnCtlColor  这个函数的名字 猜测是 控件 颜色的消息响应函数
HBRUSH CTestGszDlg::OnCtlColor(CDC* pDC,//那个日本浪人  ,用的时候你需要把他手里原本的工具换掉
                                CWnd* pWnd,//是控件的指针
                                UINT nCtlColor)
{
    HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);//这句代码VS2010向导自己生成的

    // TODO:  在此更改 DC 的任何特性
    //GetDlgItem 获得它的子控件

    COLORREF tCl=RGB(255,0,0);//这个是我自己些  就是定义个颜色变量  typedef DWORD   COLORREF;
    if (pWnd->GetDlgCtrlID() == IDC_STATIC)//这句代码有些诡异啊。  pWnd->GetDlgCtrlID() 是获取pWnd 自身ID的意思。
        //pWnd 是一个控件, 不是对话框
    {
        pDC->SetTextColor(tCl);//只是对ID为IDC_STATIC 的设备上下进行调整。
    } 
    // TODO:  如果默认的不是所需画笔,则返回另一个画笔
    return hbr;
}

效果图

技术分享

美化MFC 之调整静态文本的颜色 字体。 用于添加公司标题 联系方式 口号等数据

标签:

原文地址:http://www.cnblogs.com/wenluderen/p/4855177.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!