孙鑫VC学习笔记:第十一讲 (六) 图形重绘方法二 利用元文件
介绍两种保存图形与重绘图形的方式
第一种,要利用要一个类 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学习笔记:第十一讲 (六) 图形重绘方法二 利用元文件相关推荐
- 孙鑫VC学习笔记:第七讲
七.对话框 2006年8月5日 14:25 因为笔记是用OneNote做的,上传以后为看不到图片,于是我截图放到相册上面, 相册地址为:http://photo.163.com/photos/good ...
- 孙鑫VC++学习笔记(转载至程序员之家--虎非龙)[11--15] .
第11课 1.创建4个菜单,为其添加消息响应,用成员变量保存绘画类型.添加LButtonDown和Up消息. 2.当窗口重绘时,如果想再显示原先画的数据,则需要保存数据.为此创建一个新类来记录绘画类型 ...
- 孙鑫VC++学习笔记(转载至程序员之家--虎非龙)[11--15]
第11课 1.创建4个菜单,为其添加消息响应,用成员变量保存绘画类型.添加LButtonDown和Up消息. 2.当窗口重绘时,如果想再显示原先画的数据,则需要保存数据.为此创建一个新类来记录绘画类型 ...
- 孙鑫VC学习系列教程
教程简介 1.循序渐进 从Win32SDK编程开始讲解,帮助大家理解掌握Windows编程的核心 -- 消息循环机制. 2.通俗易懂 编程语言枯燥难懂,然而通过孙鑫老师形象化的讲解,Windows和M ...
- 孙鑫VC++讲座笔记-(6)菜单编程
1,弹出菜单(Pop-up)是不能用来作命令响应的. 2,MFC中菜单项消息如果利用ClassWizard来对菜单项消息分别在上述四个类中进行响应,则菜单消息传递顺序:View类--Doc类--CMa ...
- 孙鑫mfc学习笔记第十四课
第十四课 网络的相关知识,网络程序的编写,Socket是连接应用程序与网络驱动程序的桥梁,Socket在应用程序中创建,通过bind与驱动程序建立关系.此后,应用程序送给Socket的数据,由Sock ...
- 孙鑫MFC学习笔记1.Windows应用程序运行机理
1.MSG结构 hwnd:窗口句柄 message:消息类型 wParam & lParam:消息的附加信息(比如键值) time:消息被投递的时间 tip:typedef的作用是从变量类型区 ...
- mfc编程 孙鑫_孙鑫VC++视频教程笔记-(3)MFC程序框架的剖析 附1-SDI程序流程图
1,寻找WinMain人口: 在安装目录下找到MFC文件夹下的SRC文件夹,SRC下是MFC源代码. 路径:MFC|SRC|APPMODUL.CPP: _tWinMain(HINSTANCE hIns ...
- 线性代数学习笔记——第二十一讲——矩阵秩的等式
1. 矩阵转置后矩阵的秩不变 2. 行阶梯形矩阵的秩即其非零行的数目 3. 初等变换不改变矩阵的秩(证明留待补充) 4. 通过矩阵的初等变换将矩阵化为行阶梯形矩阵,以求解矩阵的秩 5. 求出矩阵的秩后 ...
- 高等数学学习笔记——第二十一讲——函数的一致连续性
1. 问题引入--函数在一点连续的定义及几何意义 2. 函数一致连续的定义 3. 一致连续与连续的关系:若函数在开区间内一致连续,则其在该区间内连续 4. 一致连续的几何解释(例:正弦函数的一致连续性 ...
最新文章
- 关于分页的解决方案收集
- Java 中商业运算必备的精确运算类:BigDecimal
- 转转转![Spring MVC] - 500/404错误处理-SimpleMappingExceptionResolver
- Js选择器方法汇总之Salesforce常用
- ES5 getter setter
- MySQL与MariaDB概述 (二)
- android 呼吸灯权限_小米新机搭载炫彩呼吸灯酷到爆;三星顶级旗舰Note 10正式官宣...
- 手机控制linux工具下载,Scrcpy-Scrcpy(手机控制软件)下载 v1.16官方版--pc6下载站
- LCA在线算法ST算法
- 登录注册页面(连接MySQL8.0.15版本)
- NOI2019游记 —— 夏花般绚烂,繁星般璀璨
- 元胞自动机及其MATLAB实例
- QQ登录之后自动弹出“QQ网吧”怎么屏蔽?
- 数据挖掘 --如何有效地进行数据挖掘和分析
- 太阳高度角与方位角计算
- 定义一个 Room 类,包含成员变量面积和高度,以及内部类 Table 和 Chair
- 去中心化数据库:传统IT与区块链的未来融合形式
- 编程将输入的百分制成绩转换为五分制成绩输出
- 自定义SSLSocketFactory
- 软件测试之α测试和Beta测试