Bitmap* bitmap //这个装有图片的
怎么通过:
HBITMAP  hbitmap
转换成:
CBitmap  cbitmap或者反过来怎么做?

解决方案 »

  1.   

    FromHandle
    GetSafeHandle
    还有一个保存句柄的变量。
    类似的转换,在VC里-》 出来的代码提示里翻一遍,一般就找出来
      

  2.   

    上面的方法都是MFC提供的标准的方式,怎么会出问题呢?
      

  3.   

    Bitmap m_pBackBmp = ::new Bitmap((HBITMAP)::GetCurrentObject(CurDC, OBJ_BITMAP),NULL); 帮分析一下这句
      

  4.   

    你可以看看http://blog.csdn.net/newstarao/article/details/4209656
    用Attach比较好,FromHandle是临时的,容易出错。
    其实CBitmap就是对HBitmap的封装,可以直接把别的现成的HBitmap拿过来的。
    另外你说打开PNG,你不一定要用GDI+来打开啊,有很多别的方法,比如IPicture接口、ATL/MFC的CImage。
    都可以直接读取PNG文件并绘制出来的。