我想根据图片的路径来加载图片显示到对话框上,(路径是从XML里读出来的),然后根据XML里的一些配置项循环创建复选框。请问该怎么做呢读XML没有问题

解决方案 »

  1.   

    LoadImage(CString pathName,CDC* pDC)
    {
    IStream* pStream;
    IPicture* pPicture;
    CFile file;    if(!file.Open(pathName,CFile::modeRead))
    return; DWORD m_nFileLen;
    m_nFileLen=file.GetLength(); HGLOBAL hMem=::GlobalAlloc(GMEM_MOVEABLE,m_nFileLen);
    LPVOID lpBuf=::GlobalLock(hMem);    if(file.ReadHuge(lpBuf,m_nFileLen)!=m_nFileLen)
    return;

    file.Close();
    ::GlobalUnlock( hMem ); if(CreateStreamOnHGlobal(hMem,TRUE,&pStream)!=S_OK)
    return;
    if(OleLoadPicture(pStream,m_nFileLen,TRUE,IID_IPicture,(LPVOID*)&pPicture)!=S_OK)
    return;

    long nWidth,nHeight; 
    pPicture->get_Width( &nWidth ); 
    pPicture->get_Height( &nHeight );

    CSize sz( nWidth, nHeight );
    pDC->HIMETRICtoDP( &sz );
    pPicture->Render(pDC->m_hDC,0,0,sz.cx,sz.cy,0,nHeight,nWidth,-nHeight,NULL); pPicture->Release();
    pStream->Release();
    }
    传入路径和dc