为控件或窗口添加背景

来源:互联网 发布:fiil bestie 知乎 编辑:程序博客网 时间:2024/05/16 10:36

为控件添加图片背景 

   部分代码如下 :

    CClientDC* pDC = new CClientDC(pWindow);//创建当前窗口的设备文件对象。或用CDC* pDC = pWindow->GetDC();
    CBitmap bitmap;
    BITMAP bitmapInfo;
    CDC MemDC; 
   //加载背景位图,本函数从Path指定名字或者由ID号标志的位图资源。加载的位图被附在CBitmap对象上。
    bitmap.LoadBitmap(ID_SOURCEID/Path); 

  //得到图片的相关信息。或  bitmap->GetObject(sizeof(bitmapInfo), &bitmapInfo)。
    bitmap.GetBitmap(&bitmapInfo);                      

  //产生与pDC指定设备兼容的设备上下文内存,设备上下文内存包含显示表面的信息,
  //它用于在向实际的兼容设备表面发送图象之前在内存中作好准备。 
    MemDC.CreateCompatibleDC(pDC);  

   //将对象(bitmap)选入设备上下文中。CDC类为特定类型的GDI对象提供了五种形式,
  //包括画笔、画刷、字体、位图和区域。最新选中的对象将覆盖同类型的前一个对象 。
    MemDC.SelectObject(&bitmap); 

   //从源设备上下文拷贝位图到这个当前设备上下文。
    pDC->BitBlt(0,0,client.cx,client.cy,&MemDC,src.cx,src.cy,SRCCOPY); 
  }