我要创建一个位图画刷,但是位图总是倒不进去,急5555555555    
CBitmap bmp;
    int n=bmp.LoadBitmap(IDB_BITMAP1);
CPen newPen;
CBrush brush;
      brush.CreatePatternBrush(&bmp);
m_oldBrush=pcdc->SelectObject(&brush);

解决方案 »

  1.   

    重载WM_PAINT消息,放入自己修改后的代码,
    HDC hBMDC;
    HBITMAP hBitmap,hBitmapOld;hBitmap=NULL;
    SetBkMode(hdc, TRANSPARENT);hBitmap = LoadBitmap(hInst,MAKEINTRESOURCE(IDB_PREPARE));//-2hBMDC = CreateCompatibleDC(hdc); 
    hBitmapOld=(HBITMAP)SelectObject(hBMDC,hBitmap); 
                
    StretchBlt(hdc,0,0,PIC_STEP_WIDTH,PIC_STEP_HEIGHT,hBMDC,
    0,0,PIC_STEP_WIDTH,PIC_STEP_HEIGHT,SRCCOPY);

    SelectObject(hBMDC,hBitmapOld);
    DeleteDC(hBMDC);
    DeleteObject(hBitmap);
      

  2.   

    主要是这些都是在ATL COM工程中,但是
    hBitmap = LoadBitmap(hInst,MAKEINTRESOURCE(IDB_PREPARE));//-2
    这一句后句柄总是空的,也就是位图始终没有进来啊。
      

  3.   

    HBITMAP hbitmap;
    hbitmap=(HBITMAP)::LoadImage(NULL,picfile.GetPathName(),IMAGE_BITMAP,500,350,LR_LOADFROMFILE);
    bitmap.Detach();不可能不行的!