程序中用到点击树控件结点的时候在一个指定区域(可以是图片控件)中显示对应的位图,位图可以是本地图片,也可以是数据库中的.如果实现??请高手相助

解决方案 »

  1.   

    如果是本地文件可以采用
    LoadImage + StretchBlt来绘制。
    你的数据库中是如何保存位图的?如果是保存的位图内容,
    不妨试试StretchDIBits。
      

  2.   

    本地文件。
    void DrawLocalBitmap(HDC hDC,CRect rect,LPCTSTR lpszBmpFileName)
    {
    HBITMAP hBmp = (HBITMAP)LoadImage(NULL,lpszBmpFileName,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
    CBitmap bmp;
    bmp.Attach(hBmp);
    BITMAP bm;
    GetBitmap(&bm);//get the bitmap width and height.
    SetStretchBltMode(COLORONCOLOR);
    CDC dcimage;
    dcimage.CreateCompatibleDC(CDC::FromHandle(hDC));
    CBitmap *oldbmp = dcimage.SelectObject(&bmp);
    ::StretchBlt(hDC,rect.left,rect.top,rect.Width(),rect.Height(),
    &dcimage,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
    dcimage.SelectObject(oldbmp);
    dcimage.DeleteDC();
    ::DeleteObject(bmp.Detach());
    }