MFC中怎么导入多个位图啊,用BITBLT好像会出现DC重复使用的问题啊,大神求解啊,新手刚学

解决方案 »

  1.   

    显示到MFC中要进过程序吗这样就出问题了
    CBitmap bitmap;
         bitmap.LoadBitmap(IDB_BITMAP9);//显示页面的位图
         BITMAP bmp;
         bitmap.GetBitmap(&bmp);
          int w=bmp.bmWidth;
      int h=bmp.bmHeight;
     CDC dc;
     dc.CreateCompatibleDC(pDC);
     dc.SelectObject(&bitmap);
     pDC->BitBlt(900,0,w,h,&dc,0,0,SRCCOPY);     CBitmap bitmap1;
         bitmap.LoadBitmap(IDB_BITMAP1);//
         BITMAP bmp1;
         bitmap.GetBitmap(&bmp1);
          int k=bmp1.bmWidth;
      int n=bmp1.bmHeight;
     CDC dc1;
     dc.CreateCompatibleDC(pDC);
     dc.SelectObject(&bitmap1);
     pDC->BitBlt(50,360,k,n,&dc1,0,0,SRCCOPY);
    这样的导入两个位图怎么就不行呢
      

  2.   

    MFC中图形操作必然要使用双缓冲滴。对CDC的操作一定要有始有终。
      

  3.   

    CBitmap bitmap1;
         bitmap.LoadBitmap(IDB_BITMAP1);// 你这里确定不是bitmap1么?
         BITMAP bmp1;
         bitmap.GetBitmap(&bmp1); //这里也是
          int k=bmp1.bmWidth;
      int n=bmp1.bmHeight;
     CDC dc1;
     dc.CreateCompatibleDC(pDC);
     dc.SelectObject(&bitmap1);
     pDC->BitBlt(50,360,k,n,&dc1,0,0,SRCCOPY);楼主代码就写错了。