如何給MFC對話框添加背景圖片 .


1、添加背景圖片到“Bitmap”資源里。方法為“插入——資源”,如果還沒有Bitmap,則新建一個Bitmap,否則選擇資源
      類型為“Bitmap”后“引入”想要插入的背景圖片,我加入的背景圖片如圖1,加入過程如圖2。  

 

 
圖1


 

      
圖2  

                            說明:引入的圖片可以插入256色、16位色或更高色的圖片,若是其他格式圖片可用PS打開再另存為BMP、24位windows格式就可
                    以了。提示說該資源使用了大於256色的調色板,在VC里無法編輯等等,點確定就可以了,沒有影響的。

2、定位到  void CXXXDlg::OnPaint(),在if()...else()中的else()下添加如下代碼:
   else  
   {  
          //CDialog::OnPaint();//要禁止這個調用  
          CPaintDC   dc(this);  
          CRect   rect;  
          GetClientRect(&rect);  
          CDC   dcMem;  
          dcMem.CreateCompatibleDC(&dc);  
          CBitmap   bmpBackground;  
          bmpBackground.LoadBitmap(IDB_BITMAP);   //IDB_BITMAP是你自己的圖對應的ID   ,由於我剛剛加入的位圖資源
                                                                            //被我命名成了IDB_Bg,因而我這句就是bmpBackground.LoadBitmap(IDB_Bg);  
                  
          BITMAP   bitmap;  
          bmpBackground.GetBitmap(&bitmap);  
          CBitmap   *pbmpOld=dcMem.SelectObject(&bmpBackground);  
          dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,  
         bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);  
    }


3、編譯運行結果如圖3。
                              
                                  

圖3  

4、通過屬性設置把邊框隱藏起來並更改對話框的大小結果更好一點,如圖4。

 

  
圖4
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM