以下是在OnDraw函数中的显示Bitmap的方法!
谁能给出一个不再OnDraw函数中,通过单击来显示Bitmap的方法还有“BITMAP bminfo;
bitmap.GetObject(sizeof(bminfo),&bminfo);”
这两句是什么意思?
CBitmap bitmap;
HBITMAP hbitmap=(HBITMAP)LoadImage(NULL,"BIRD27.BMP",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); bitmap.Attach(hbitmap); CDC dcComp;
dcComp.CreateCompatibleDC(pDC);

dcComp.SelectObject(&bitmap); BITMAP bminfo;
bitmap.GetObject(sizeof(bminfo),&bminfo);

pDC->BitBlt(0,0,bminfo.bmWidth,bminfo.bmHeight,&dcComp,0,0,SRCCOPY);

解决方案 »

  1.   

    BITMAP 是一个位图信息结构
    bitmap是CBitmap类,它将它载入的位图的信息(如高度、宽度、颜色数保存到BITMAP结构中)
    typedef struct tagBITMAP {  /* bm */
        int     bmType;
        int     bmWidth;
        int     bmHeight;
        int     bmWidthBytes;
        BYTE    bmPlanes;
        BYTE    bmBitsPixel;
        LPVOID  bmBits;
    } BITMAP;
      

  2.   

    这段代码可以放在任何函数里,只有得到相应窗口的pDC即可。
      

  3.   

    也可以通过单击来响应OnDraw()函数。
      

  4.   

    1.BITMAP是一个说明位图类型、宽、高等信息的结构
      GetObject得到位图的信息存到指针指向的buffer里
    2.在你要画图的函数里加上一句 CClientDC dc(this)就可以了