CTestMetaFileView::CTestMetaFileView()
{
      // TODO: add construction code here
      m_dcMetaFile.Create();  //初始化CMetaFileDC,CMetaFileDC已经定义为类成员
}
void CTestMetaFileView::OnLButtonDown(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default
CClientDC pDC(this); pDC.TextOut(point.x,point.y,"shiyan",strlen("shiyan")); //在屏幕上显示shiyan
m_dcMetaFile.TextOut(point.x,point.y,"shiyan",strlen("shiyan"));
         //在m_dcMetaFile中也写入shiyan,以备在窗口重绘时显示,重绘时成功显示
     //m_dcMetaFile.DrawText("shiyan",CRect (point.x,point.y,point.x+100,point.y+100),1);
    //在m_dcMetaFile中也写入shiyan,以备在窗口重绘时显示,重绘时不显示 CView::OnLButtonDown(nFlags, point);
}
void CTestMetaFileView::OnDraw(CDC* pDC)
{
CTestMetaFileDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
HMETAFILE hMetaFile;
hMetaFile=m_dcMetaFile.Close();
pDC->PlayMetaFile(hMetaFile);
// 在窗口重绘时将m_dcMetaFile中文字显示出来
//当在上面函数中用TextOut函数写文字时,这时可以显示,可用DrawText写文字时不能显示,为什么呀?
m_dcMetaFile.Create(); m_dcMetaFile.PlayMetaFile(hMetaFile); DeleteMetaFile(hMetaFile);
}总结来说,就是TextOut函数好用,DrawText不好用,为什么呀,该怎么解决?谢谢哦