MFC对话框修改背景颜色或添加背景图片、控件背景与字体颜色的修改

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014033518/article/details/50060429

MFC对话框修改背景颜色:

在CXXXDlg::OnInitDialog()中添加:
CDialogEx::SetBackgroundColor(RGB(155,170,190));
效果如下:

这里写图片描述


MFC对话框添加背景图片:

在CXXXDlg::OnInitDialog()中添加:

CDialogEx::SetBackgroundImage(IDB_BITMAP1);

效果如下:
这里写图片描述


MFC控件与背景保持一致:

  • 静态控件

给对话框添加OnCtlColor()函数:
效果:
这里写图片描述
可以看到只有ID为Static的文本框与背景保持一致。

  • 按钮控件
    插入一下代码:
UINT id = pWnd->GetDlgCtrlID();
    if(id == IDC_RADIO1 || id == IDC_CHECK1)
    {
        pDC->SetBkMode(TRANSPARENT);

        CRect rc;
        pWnd->GetWindowRect(&rc);
        ScreenToClient(&rc);

        CDC* dc = GetDC();

        pDC->BitBlt(0,0,rc.Width(),rc.Height(),dc,rc.left,rc.top,SRCCOPY);  //把父窗口背景图片先画到按钮上

        ReleaseDC(dc);

        hbr = (HBRUSH) ::GetStockObject(NULL_BRUSH);
    }

效果:
这里写图片描述

  • 修改控件字体颜色:
    添加代码:
if(nCtlColor == CTLCOLOR_STATIC )
    {
        pDC->SetTextColor((25, 0, 125));
    }

这里写图片描述

注: 此经验来自于csdn下载上的一个实例代码,通俗易懂又实用,O(∩_∩)O!

展开阅读全文

没有更多推荐了,返回首页