CBitmap BitmapObj;
BitmapObj.LoadBitmap(IDB_BITMAP2);
HBITMAP hOldBitmap = (HBITMAP)::SelectObject(hMemDC,(HBITMAP)BitmapObj);

解决方案 »

  1.   

    可以直接载入,而不需要用到CBitmap
    HBITMAP hBitmap=LoadBitmap(NULL,IDB_BITMAP2);
      

  2.   

    HBITMAP bmp=LoadBitmap(m_hInst,MAKEINTRESOURCE(IDB_NI_HAO));
      

  3.   

    HGDIOBJ SelectObject(
      _In_  HDC hdc,
      _In_  HGDIOBJ hgdiobj
    );符合参数类型!
      

  4.   

    hgdiobj [in]
    A handle to the object to be selected. The specified object must have been created by using one of the following functions.
    Object Functions
    Bitmap
    CreateBitmap, CreateBitmapIndirect, CreateCompatibleBitmap, CreateDIBitmap, CreateDIBSection
    Bitmaps can only be selected into memory DC's. A single bitmap cannot be selected into more than one DC at the same time.
    Brush
    CreateBrushIndirect, CreateDIBPatternBrush, CreateDIBPatternBrushPt, CreateHatchBrush, CreatePatternBrush, CreateSolidBrush
    Font
    CreateFont, CreateFontIndirect
    Pen
    CreatePen, CreatePenIndirect
    Region
    Com
      

  5.   

    CBitmap::operator HBITMAP
    =============
    你上面用得没错啊!
      

  6.   

    因为CBitmap类重载了HBITMAP类型
    operator HBITMAP 
     Returns the Windows handle attached to the CBitmap object. 
     
      

  7.   

    ,(HBITMAP)BitmapObj); 
    也可以:
    ,BitmapObj.m_Object);