请问高手,如何在显示GIF动画! 请问高手,如何在对话框中显示GIF动画!谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你必须懂得gif的文件格式,然后把数据区的数据解压出来,变成bmp格式,再显示出来 http://expert.csdn.net/Expert/topic/2927/2927232.xml?temp=.9987909 我已经将数据读出来了!如何显示?请高手赐教!谢谢!代码如下!可是有些没有效果!最后一帧无法显示!if(g_frameNum[index] > nFrameNum-1 ) g_frameNum[index] = 0; DWORD lpflOldProtect ; VirtualProtect(gifBuff,nGifSize,PAGE_READWRITE,&lpflOldProtect); for(DWORD n=0;n<nFrameSize[g_frameNum[index]];n++) { gifBuff[firstLocation+n] = *(BYTE*)(pFrame[g_frameNum[index]]+n); } VirtualProtect(gifBuff,nGifSize,lpflOldProtect,NULL); // memcpy( (char*)(&gifBuff[firstLocation]), pFrame[g_frameNum[index]], nFrameSize[g_frameNum[index]]); g_frameNum[index]++; CMemFile file(gifBuff,nGifSize); CArchive ar(&file,CArchive::load|CArchive::bNoFlushOnDelete); CArchiveStream arcstream(&ar); CComQIPtr<IPicture> m_picture; HRESULT hr = OleLoadPicture((LPSTREAM)&arcstream,0,false,IID_IPicture,(void**)&m_picture); long a,b; m_picture->get_Width(&a); m_picture->get_Height(&b); CSize sz(a,b); m_gifDC->HIMETRICtoDP(&sz); CRect rect; m_picture->Render(*m_gifDC, g_pRect[index].left, g_pRect[index].top, sz.cx,sz.cy,0,b,a,-b,&rect); 关于CDOCUMENT函数 程序员,健康状况大调查,, 如何写一条sql语句,查询除某一列以外的其他所有列 关于Bitmap类的问题 怎么样装载对话框资源? 请问我自画的ListView为什么不能改变颜色,谢谢(我的是SDK程序) 问题... 使用direct show 怎样设置压缩 MPEG LAYER-3 的压缩码率与帧数?急 只要回答问题每人有分!mfc+odbc+sql 很要紧的一个问题,关系小弟终生? 一个对话框上的按钮问题?(不解) 如何設置字體顏色?
如何显示?请高手赐教!谢谢!
代码如下!
可是有些没有效果!
最后一帧无法显示!
if(g_frameNum[index] > nFrameNum-1 )
g_frameNum[index] = 0;
DWORD lpflOldProtect ;
VirtualProtect(gifBuff,nGifSize,PAGE_READWRITE,&lpflOldProtect);
for(DWORD n=0;n<nFrameSize[g_frameNum[index]];n++)
{
gifBuff[firstLocation+n] = *(BYTE*)(pFrame[g_frameNum[index]]+n);
}
VirtualProtect(gifBuff,nGifSize,lpflOldProtect,NULL);
// memcpy( (char*)(&gifBuff[firstLocation]), pFrame[g_frameNum[index]], nFrameSize[g_frameNum[index]]);
g_frameNum[index]++;
CMemFile file(gifBuff,nGifSize);
CArchive ar(&file,CArchive::load|CArchive::bNoFlushOnDelete);
CArchiveStream arcstream(&ar);
CComQIPtr<IPicture> m_picture;
HRESULT hr = OleLoadPicture((LPSTREAM)&arcstream,0,false,IID_IPicture,(void**)&m_picture);
long a,b;
m_picture->get_Width(&a);
m_picture->get_Height(&b);
CSize sz(a,b);
m_gifDC->HIMETRICtoDP(&sz);
CRect rect;
m_picture->Render(*m_gifDC, g_pRect[index].left, g_pRect[index].top, sz.cx,sz.cy,0,b,a,-b,&rect);