请问在对话框中如何显示出一BMP格式的图片,不知道怎么做,谢谢

解决方案 »

  1.   

    作为对话框背景图片并从文件读取图片BOOL CXXXDlg::OnEraseBkgnd(CDC* pDC) 
    {
    // TODO: Add your message handler code here and/or call default
    CString string="E:\\Pic\\BACKGROUND.bmp";
    HBITMAP hbitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),string,
                 IMAGE_BITMAP,1024,768, LR_CREATEDIBSECTION|LR_LOADFROMFILE);   
        //VERY   IMPORTANT:NOT   CALL   THE   SUPER   CLASS   FUNCTION   
    CPaintDC   dc(this);
        if(hbitmap==NULL)   
           return   FALSE;   
    CBitmap   bitmap;   
    bitmap.Attach(hbitmap);   
    BITMAP   bmp;   
    bitmap.GetBitmap(&bmp);   
         
        CDC cdc;
        cdc.CreateCompatibleDC(pDC);   
        cdc.SelectObject(&bitmap);   
        pDC->BitBlt(0,0,bmp.bmWidth,bmp.bmHeight,&cdc,0,0,SRCCOPY);
          return   TRUE;
    }
      

  2.   

    先将图片作为资源载入,然后在对话框的OnPaint函数里用CDC::BitBlt函数显示
    或者直接用picture控件也行
      

  3.   

    可以用GDI+来做,实现很简便,效果也很好