关于CreateEnhMetaFile生成wmf文件的问题
向大家请教一个问题,我想生成一个wmf文件,然后每次都向他上面新加几个曲线,再保存。可现在无法实现呀。只能保存成外贸法、文件,但是新加曲线后,无法保存,打开后,还是原来的曲线,下面是部分代码,希望大家帮帮忙,谢谢
select case ( mesg )
case (WM_CREATE)
ik=0
increatement=10
ret=GetClientRect (hwnd, rect)
hTimer=SetTimer(hwnd,1,300,null)
hdlgdc=GetDC(hWnd)
hdcmeta=CreateEnhMetaFile(null,null,null,null) !开启保存曲线元位图Metafile
MainWndProc = 0
return
case(wm_timer)
if(ik==1) then !打开wmf文件
ik=0
hmf=GetEnhMetaFile("123.wmf")
ret= PlayEnhMetaFile (hdcmeta, hmf,rect)
hmf = CloseEnhMetaFile (hdcMeta)
ret= PlayEnhMetaFile (hdlgdc, hmf,rect)
hdcmeta=CreateEnhMetaFile(null,null,null,null)
ret= PlayEnhMetaFile (hdcmeta, hmf,rect)
endif
MainWndProc = 0
return
case (WM_COMMAND)
select case ( IAND(wParam, 16#ffff ) )
case (IDC_open)
ik=1
MainWndProc = 0
return
case (IDM_save) !保存wmf文件
hmf = CloseEnhMetaFile (hdcMeta)
ret=CopyEnhMetaFile(hmf,"123.wmf"c)
hdcmeta=CreateEnhMetaFile(null,null,null,null)
MainWndProc = 0
return
case (IDM_continueline) !打开后,继续画新的曲线,然后在保存,
ret=MoveToEx(hdcmeta,0,100+increatement,NULL_POINT) !在元位图中保存曲线
ret=LineTo(hdcmeta,800,500+increatement) !在元位图中保存曲线
increatement=increatement+10
MainWndProc = 0
return