使用ATL库中的CImage类加载JPG图片作为对话框背景
发布时间:2021-05-21 04:50:47 所属栏目:大数据 来源: https://www.jb51.cc
导读:这下有了CImage类,处理其他类型的图片不再寻找第三方类库了。加载到对话框背景的代码如下: // 从资源里载入背景JPEG图片 HRSRC hRsrc = ::FindResource(AfxGetResourceHandle(),MAKEINTRESOURCE(IDR_JPG1),_T( " JPG " )); if (hRsrc != NULL) ... { HGLOBA
这下有了CImage类,处理其他类型的图片不再寻找第三方类库了。加载到对话框背景的代码如下:
// 从资源里载入背景JPEG图片 HRSRC hRsrc = ::FindResource(AfxGetResourceHandle(),MAKEINTRESOURCE(IDR_JPG1),_T( " JPG " )); if (hRsrc != NULL) ... { HGLOBAL hImgData=::LoadResource(AfxGetResourceHandle(),hRsrc); if(hImgData==NULL) ...{ ::FreeResource(hImgData); } else ...{ LPVOID lpVoid = ::LockResource(hImgData); LPSTREAM pStream=NULL; DWORD dwSize = ::SizeofResource(AfxGetResourceHandle(),hRsrc); HGLOBAL hNew = ::GlobalAlloc(GHND,dwSize); LPBYTE lpByte = (LPBYTE)::GlobalLock(hNew); ::memcpy(lpByte,lpVoid,dwSize); GlobalUnlock(hNew); HRESULT ht = CreateStreamOnHGlobal(hNew,TRUE,&pStream); if( ht != S_OK ) ...{ //ASSERT( FALSE ); GlobalFree(hNew); } else ...{ m_imgBK.Load(pStream); GlobalFree(hNew); } ::FreeResource(hImgData); } } // m_imgBK.Load("hh.jpg"); // 这个方法可以载入文件 处理消息OnEraseBkgnd,
?return TRUE; ? (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |