MFC VC ++:优化校准无法加载PNG图像

时间:2013-05-30 10:07:40

标签: visual-c++ mfc png

我使用以下代码将PNG图像加载到优化校准中。

....
LPSTREAM pStrmDefImg = TurnStream(MAKEINTRESOURCE(resourceID),_T("PNG"));
if(pStrmDefImg !=  NULL) {
    CImage img;
    img.Load(pStrmDefImg);    // Load from stream
    pictureCtrl.SetBitmap(img);
    pStrmDefImg->Release();
}
.....

LPSTREAM TurnStream(LPCTSTR Resource, LPCTSTR Type)
{
    char* pData = 0;
    DWORD dwSize = 0;
    int nRes = GetResource(Resource,Type,&pData,&dwSize);              
    LPSTREAM pStream;
    HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE, dwSize+1);
    void *pImageData = GlobalLock(hGlobal);
    memcpy(pImageData, pData, dwSize);
    HRESULT hr = CreateStreamOnHGlobal(hGlobal, TRUE, &pStream);
    return pStream;
}

您是否在此代码中看到任何问题?没有抛出错误,但图片控件不显示加载的图像。

1 个答案:

答案 0 :(得分:0)

type属性窗口中将Bitmap属性设置为PictureCtrl