zoukankan      html  css  js  c++  java
  • 【转】MFC添加背景图片方法的三种方法

    原帖1:http://www.cnblogs.com/xiao-cheng/archive/2012/01/17/2325114.html

    原帖2:http://www.cnblogs.com/fanghui/p/3565067.html

    方法1:使用StretchBlt()函数,具有图像自适应窗体功能

    //在Onpaint函数中加入如下代码    
    //----------给窗口设置背景图片----------------------------
            CPaintDC dc(this);
            CRect   myrect;   
            GetClientRect(&myrect);   
            CDC   dcMem;   
            dcMem.CreateCompatibleDC(&dc);   
            CBitmap   bmpBackground;   
            bmpBackground.LoadBitmap(IDB_BITMAP1);   //IDB_BITMAP_TOOL是你自己的图对应的ID 
            BITMAP   bitmap;   
            bmpBackground.GetBitmap(&
            bitmap);   
            CBitmap   *pbmpOld=dcMem.SelectObject(&bmpBackground);   
            dc.StretchBlt(0,0,myrect.Width(),myrect.Height(),&dcMem,0,0,   
            bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);

    方法2:

    1、声明成员变量               
    CBrush m_brush;
    2、在InitDialog中添加代码: CBitmap bmp; bmp.LoadBitmap(IDB_BITMAP1); //IDB_BITMAP1是图片资源ID m_brush.CreatePatternBrush(&bmp); 3、重载对话框的OnCtlColor,改最后的返回值: return (HBRUSH)m_brush;

    方法3:把下面这段代码加进OnPaint()里就行了

    CPaintDC dc(this);
    CBitmap   bitmap;
    bitmap.LoadBitmap(IDB_BITMAP1);     // 这个IDB_BITMAP1要自己添加
    CBrush   brush; 
    brush.CreatePatternBrush(&bitmap);
    CBrush*   pOldBrush   =   dc.SelectObject(&brush);
    dc.Rectangle(0,0,200,200);          // 这些参数可以调整图片添加位置和大小
    dc.SelectObject(pOldBrush);    
  • 相关阅读:
    JSP学习-JSP访问数据库-JavaBean封装
    JSP学习-sessionDemo
    第十次随笔
    第九次随笔
    第八次随笔
    第七次随笔
    第六次随笔
    第五次随笔
    第四次随笔
    第三次随笔
  • 原文地址:https://www.cnblogs.com/Lthis/p/4611943.html
Copyright © 2011-2022 走看看