您的位置:首页 > 其它

MFC中添加对话框背景的方法

2016-11-23 08:51 246 查看
当对话框背景需要更新显示时,系统会自动发送WM_ERASEBKGND消息。

    步骤一,添加WM_ERASEBKGND消息的映射函数。

    步骤二,在映射函数处理中加入如下面代码。

BOOL CMFCApplication1Dlg::OnEraseBkgnd(CDC* pDC)  

{  

    // TODO: 在此添加消息处理程序代码和/或调用默认值  

  

    // 设置画刷为希望的背景  

    CDC backBmp;  

    backBmp.CreateCompatibleDC(pDC);  

    CBitmap bitmap;  

     //加载位图资源的ID  

    bitmap.LoadBitmap(IDB_BITMAP_ZQT);  

    CBrush m_brushBackground;  

    m_brushBackground.CreatePatternBrush(&bitmap); ///创建位图画刷  

    CRect rect;  

    GetClientRect(&rect);  

    CBrush* pOldMemDCBrush = pDC->SelectObject(&m_brushBackground);  

    pDC->PatBlt(0, 0, rect.Width(),rect.Height(), PATCOPY);  

    //pDC->SelectObject(pOldMemDCBrush);  

    return TRUE;  

    //return CDialogEx::OnEraseBkgnd(pDC);  

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: