MFC中设置SDI的背景图片

VC开发简单的单文档程序时,客户区一般是一片空白,可以显示一张图片,重载OnEraseBkgnd()函数即可。

代码如下:

BOOL CSAMSView::OnEraseBkgnd(CDC * pDC) {
    //TODO: Add your message handler code here and/or call default
    //创建位图
    CBitmap bitmap;
    bitmap.LoadBitmap(IDB_BITMAP_MAIN_BACKGRAND);
    //得到位图的信息
    BITMAP bmp;
    bitmap.GetBitmap( & bmp);
    //创建兼容DC
    CDC dcCompatible;
    dcCompatible.CreateCompatibleDC(pDC);
    //将位图选到兼容DC中
    dcCompatible.SelectObject( & bitmap);
    //得到客户区的大小
    CRect rect;
    GetClientRect( & rect);
    //将兼容DC中的位图贴到当前DC中。 
    pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &dcCompatible, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
    //return CView::OnEraseBkgnd(pDC); 
    return TRUE;
}
/usr/themes/NexTSun/static/images/yovisun-weixin-share.jpg
赞 (2) 分享
声明:原创文章,欢迎转载,请以 超链接 的形式注明 作者标题原始出处查看许可协议
标题MFC中设置SDI的背景图片 | 作者:YoviSun
地址https://www.yovisun.com/archive/mfc-sdi-background-image.html
相关文章:
添加新评论
选择表情
手机扫描二维码访问