急!显示元文件的问题

dragonzxh 2005-05-09 11:36:03
比如剪贴板中内容是从Excel表里面复制下来的元文件类型
现在要把他粘贴到自己程序中


COleDataObject* pOleDataObj = new COleDataObject();
if (pOleDataObj->AttachClipboard())
{
if (pOleDataObj->IsDataAvailable(CF_METAFILEPICT))
{
HANDLE hMem = pOleDataObj->GetGlobalData(CF_METAFILEPICT);
//这样获得数据以后,怎样把他显示出来

}
}



获得数据以后,怎样把他显示出来.知道的请告诉我,急
...全文
99 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuchi 2005-05-10
  • 打赏
  • 举报
回复
你这样从剪贴板上或数据
hMetaFile = ( HENHMETAFILE )::GetClipboardData( CF_ENHMETAFILE );
再用dc.PlayMetaFile(hmf)试试
dragonzxh 2005-05-09
  • 打赏
  • 举报
回复
楼上的楼上的WOWHandle32 - convert HMETAFILE to HENHMETAFILE
不懂什么意思,怎么进行这个类型转换?
dragonzxh 2005-05-09
  • 打赏
  • 举报
回复
还是不行.....

有谁做过这方面的东西吗?

jerry 2005-05-09
  • 打赏
  • 举报
回复
用楼上的 PlayEnhMetaFile 再试试 ,如果还不行, 我也不知道了
dragonzxh 2005-05-09
  • 打赏
  • 举报
回复
试了下,似乎不行..
Phourm 2005-05-09
  • 打赏
  • 举报
回复
CF_METAFILEPICT
Handle to a metafile picture format as defined by the METAFILEPICT structure. When passing a CF_METAFILEPICT handle by means of dynamic data exchange (DDE), the application responsible for deleting hMem should also free the metafile referred to by the CF_METAFILEPICT handle.

WOWHandle32 - convert HMETAFILE to HENHMETAFILE

PlayEnhMetaFile
The PlayEnhMetaFile function displays the picture stored in the specified enhanced-format metafile.

jerry 2005-05-09
  • 打赏
  • 举报
回复
HANDLE hMem = pOleDataObj->GetGlobalData(CF_METAFILEPICT);
//这样获得数据以后,怎样把他显示出来


HMETAFILE hmf = (HMETAFILE) ::GlobalLock(hMem);
CClientDC dc(this);

dc.PlayMetaFile(hmf);

::GlobalUnlock(hMem);


-------------------------
不知道这样行不行.
dragonzxh 2005-05-09
  • 打赏
  • 举报
回复
自己顶一下, 有写过类似程序的来看一下.谢谢

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧