位图显示几种,包含loadimage

来源:互联网 发布:投影仪ktv软件下载 编辑:程序博客网 时间:2024/05/16 15:27

  1.   CBitmap hbmp;
      HBITMAP hbitmap;
      //装载图片文件MM.bmp
      hbitmap=(HBITMAP)::LoadImage(::AfxGetInstanceHandle(),"MM.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
      hbmp.Attach(hbitmap);
      //获取图片格式
      BITMAP bm;
      hbmp.GetBitmap(&bm);
      CDC dcMem;
      dcMem.CreateCompatibleDC(GetDC());
      CBitmap * poldBitmap=(CBitmap*)dcMem.SelectObject(hbmp);
      CRect lRect;
      GetClientRect(&lRect);
      lRect.NormalizeRect();
      //显示位图
    MFC显示位图的几种方法
  2. 2
      GetDC()->StretchBlt(lRect.left,lRect.top,lRect.Width(),lRect.Height(),&dcMem,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
      dcMem.SelectObject(&poldBitmap);
      //在Static控件内显示位图
      CBitmap hbmp;
      HBITMAP hbitmap;
      //将pStatic指向要显示的地方
      CStatic *pStatic;
      pStatic=(CStatic*)GetDlgItem(IDC_STATIC); //IDC_STATIC是你的Staic控件名
      //装载图片文件MM.bmp
      hbitmap=(HBITMAP)::LoadImage(::AfxGetInstanceHandle(),"MM.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
      hbmp.Attach(hbitmap);
    MFC显示位图的几种方法
  3. 3
      //获取图片格式
      BITMAP bm;
      hbmp.GetBitmap(&bm);
      CDC dcMem;
      dcMem.CreateCompatibleDC(GetDC());
      CBitmap * poldBitmap=(CBitmap*)dcMem.SelectObject(hbmp);
      CRect lRect;
      pStatic->GetClientRect(&lRect);
      lRect.NormalizeRect();
      //显示位图
      pStatic->GetDC()->StretchBlt(lRect.left,lRect.top,lRect.Width(),lRect.Height(),&dcMem,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
      dcMem.SelectObject(&poldBitmap);
    MFC显示位图的几种方法
0 0