介绍两种保存图形与重绘图形的方式
第一种,要利用要一个类 CMetaFileDC
第一步创建一个CMetaFileDC 对象。
接着调用CMetaFileDC 构造器,然后再调用Create 函数 创建一个设备上下文与CMetaFileDC 对象关联起来。

下一步给CMetaFileDC 对象发送一系列的CDC命令

在为元文件发送完命令之后,调用Close成员函数关闭元文件的设备上下文,
并返回一个元文件 的句柄。接着就可以处理CMetaFileDC 对象。

CDC::PlayMetaFile 方法可以用来使用元文件句柄播放元文件,我们可以多次调用本函数

介绍一些与本操作相关的成员函数
--------------------------------------------------------------------------------
CMetaFileDC::Create 
 BOOL Create(LPCTSTR lpszFilename = NULL );
 如果指定一个字符串,那么就指定了元文件的文件名,用来保存元文件
 如果变量pszFilename 为空,那么就会在内存中创建一个元文件
 
--------------------------------------------------------------------------------
CMetaFileDC::Close 
关闭一个设备上下文,返回一个DC句柄。

--------------------------------------------------------------------------------
用元文件来重绘图形的具体步骤:
1.先在CGraphicView类中,增加一个CMetaFileDC变量m_dcMetaFille
2.在CGraphicView类的构造函数中调用m_dcMetaFille的Create()方法,
  Create方法的参数的NULL时创建一个内存的元文件
3.在CGraphicView类的OnLButtonUp()方法中,写入绘图命令,
   OnLButtonUp()方法代码如下:
4.窗口重绘时,即在OnDraw()函数中,去关闭元文件,从而获得元文件句柄。
  有了元文件的句柄,就可以利用CDC::PlayMetaFile来播放它。
   注意:关闭元文件并不意味着删除元文件。

问题:元文件关闭以后,难道不能再次打开,继续画图? 希望有经验的朋友可以讲解一下这个问题!

孙鑫VC学习笔记:第十一讲 (六) 图形重绘方法二 利用元文件相关推荐

  1. 孙鑫VC学习笔记:第七讲

    七.对话框 2006年8月5日 14:25 因为笔记是用OneNote做的,上传以后为看不到图片,于是我截图放到相册上面, 相册地址为:http://photo.163.com/photos/good ...

  2. 孙鑫VC++学习笔记(转载至程序员之家--虎非龙)[11--15] .

    第11课 1.创建4个菜单,为其添加消息响应,用成员变量保存绘画类型.添加LButtonDown和Up消息. 2.当窗口重绘时,如果想再显示原先画的数据,则需要保存数据.为此创建一个新类来记录绘画类型 ...

  3. 孙鑫VC++学习笔记(转载至程序员之家--虎非龙)[11--15]

    第11课 1.创建4个菜单,为其添加消息响应,用成员变量保存绘画类型.添加LButtonDown和Up消息. 2.当窗口重绘时,如果想再显示原先画的数据,则需要保存数据.为此创建一个新类来记录绘画类型 ...

  4. 孙鑫VC学习系列教程

    教程简介 1.循序渐进 从Win32SDK编程开始讲解,帮助大家理解掌握Windows编程的核心 -- 消息循环机制. 2.通俗易懂 编程语言枯燥难懂,然而通过孙鑫老师形象化的讲解,Windows和M ...

  5. 孙鑫VC++讲座笔记-(6)菜单编程

    1,弹出菜单(Pop-up)是不能用来作命令响应的. 2,MFC中菜单项消息如果利用ClassWizard来对菜单项消息分别在上述四个类中进行响应,则菜单消息传递顺序:View类--Doc类--CMa ...

  6. 孙鑫mfc学习笔记第十四课

    第十四课 网络的相关知识,网络程序的编写,Socket是连接应用程序与网络驱动程序的桥梁,Socket在应用程序中创建,通过bind与驱动程序建立关系.此后,应用程序送给Socket的数据,由Sock ...

  7. 孙鑫MFC学习笔记1.Windows应用程序运行机理

    1.MSG结构 hwnd:窗口句柄 message:消息类型 wParam & lParam:消息的附加信息(比如键值) time:消息被投递的时间 tip:typedef的作用是从变量类型区 ...

  8. mfc编程 孙鑫_孙鑫VC++视频教程笔记-(3)MFC程序框架的剖析 附1-SDI程序流程图

    1,寻找WinMain人口: 在安装目录下找到MFC文件夹下的SRC文件夹,SRC下是MFC源代码. 路径:MFC|SRC|APPMODUL.CPP: _tWinMain(HINSTANCE hIns ...

  9. 线性代数学习笔记——第二十一讲——矩阵秩的等式

    1. 矩阵转置后矩阵的秩不变 2. 行阶梯形矩阵的秩即其非零行的数目 3. 初等变换不改变矩阵的秩(证明留待补充) 4. 通过矩阵的初等变换将矩阵化为行阶梯形矩阵,以求解矩阵的秩 5. 求出矩阵的秩后 ...

  10. 高等数学学习笔记——第二十一讲——函数的一致连续性

    1. 问题引入--函数在一点连续的定义及几何意义 2. 函数一致连续的定义 3. 一致连续与连续的关系:若函数在开区间内一致连续,则其在该区间内连续 4. 一致连续的几何解释(例:正弦函数的一致连续性 ...

最新文章

  1. 关于分页的解决方案收集
  2. Java 中商业运算必备的精确运算类:BigDecimal
  3. 转转转![Spring MVC] - 500/404错误处理-SimpleMappingExceptionResolver
  4. Js选择器方法汇总之Salesforce常用
  5. ES5 getter setter
  6. MySQL与MariaDB概述 (二)
  7. android 呼吸灯权限_小米新机搭载炫彩呼吸灯酷到爆;三星顶级旗舰Note 10正式官宣...
  8. 手机控制linux工具下载,Scrcpy-Scrcpy(手机控制软件)下载 v1.16官方版--pc6下载站
  9. LCA在线算法ST算法
  10. 登录注册页面(连接MySQL8.0.15版本)
  11. NOI2019游记 —— 夏花般绚烂,繁星般璀璨
  12. 元胞自动机及其MATLAB实例
  13. QQ登录之后自动弹出“QQ网吧”怎么屏蔽?
  14. 数据挖掘 --如何有效地进行数据挖掘和分析
  15. 太阳高度角与方位角计算
  16. 定义一个 Room 类,包含成员变量面积和高度,以及内部类 Table 和 Chair
  17. 去中心化数据库:传统IT与区块链的未来融合形式
  18. 编程将输入的百分制成绩转换为五分制成绩输出
  19. 自定义SSLSocketFactory
  20. 软件测试之α测试和Beta测试

热门文章

  1. Java开发熟手该当心的11个错误
  2. iPhone6分辨率
  3. 在 hibernate 中使用 proxool 数据库连接池
  4. Byobu(tmux)的使用与定制
  5. Net设计模式实例之桥接模式( Bridge Pattern)(1)
  6. [AutoSar]RTE运行逻辑、通信逻辑与接口实现
  7. 【Webcam设计】利用底层V4L2+OPENCV进行图像处理以及移植策略
  8. 输入流控制:几种清除输入流中空格或回车的常用函数
  9. Android逆向之静态分析
  10. 网管开始往ITSM迁移(第二季)