WinCE 大排档第一篇
看了两天的WinCE大排档,norains写的,总感觉懂得了点什么又感觉没有,还是写点东西让这种模模糊糊的感觉变得真实和确切点吧。
第一章norians主要就讲了个建立一个空的窗口,用WinCE建以前我也学过,主要就是CreateWindowEx这个函数的几个参数的配置,还有对于注册表的封装,在WinCE中实现对注册表的读写操作,将这些写起来比较复杂的函数封装成一个个简单的直接调用的函数。
第二章内容讲的有点多,首先是对CMemDC进行封装,这样用缓存DC的时候更加方便。然后讲了一个iPhone手势滑动的特效,这个跟我之前做的文件浏览器的滑动过程相似,但他用的WinCE区别在于继承了CMemDC,自定义消息响应函数。接着是CImager的封装简化,利用DirectDraw,调用CoInitializeEx初始化创建一个ImageFactory,然后读取图片文件并转化为Stream,结合这两者创建合适的Decoder(解码器),CreateImageDecoder,创建成功后必须TerminateDecoder,接下来就可以对解码器就行初始化,然后开始解码,这个解码和结束解码的操作都是固定的,注意在绘制Gif文件的时候还需要创建一个线程用来动态显示,然后在线程中打开文件,设置当前帧,,获取当前帧所需要的延迟时间,并且Sleep(),以及要知道获取帧的总数,如果当前帧大于总数,则从0开始记。
还讲了一个BMP文件的保存,这个以前我也学过一点,BMP文件的组成是有三个部分,文件头信息、图片信息、数据。我们按照这三个部分信息参数给他赋值就能显示BMP文件,不过有一点区别是以前说BMP文件的点是从左下角开始绘画到右上角结束,而这里似乎不需要这样,还有对于计算文件头信息时的bfSize,需要将点的个数分成4的倍数,即(picWidth * 3+3)/4 *4这样即可,我觉得norains的算法有点复杂。
最后讲到了一个半透明的效果,这里有一个关键的函数是::AlphaBlend(memDC.GetDC(),0,0,sizeMemDC.cx,sizeMemDC.cy, hdcBmp,0, 0,WND_WIDTH, WND_HEIGHT,blendFunction);
第三章首先说了一个录音的封装,WAV格式的文件有4大块,RIFF WAVE、Format、Fact和Data,文件头的信息由一个WriteFileHeader完成,然后是waveInOpen,初始化录制缓存,然后waveInStart(开始录制),然后通过回调函数接收消息,将录制的声音数据保存到文件中,最后是停止录制。
WinCE 大排档第一篇相关推荐
- wince大排档学习
norains相对我辈来说是个大家,专业人士.他的书籍对我帮助很大.现列出一些资源,这些大多是他本博客的内容.先表示感谢. <Windows CE大排档>源代码 http://blog.c ...
- 属于窄带噪声的是热噪声_时钟201系列: 非相位噪声的情况 (第一篇)
欢迎来到Silicon Labs(亦称"芯科科技")的新系列博客文章"时钟201"的第一篇内容-非相位噪声的情况-第一部分.我们之前的系列博文"时钟1 ...
- linux的自定义input,Linux Input子系统之第一篇(input_dev/input_handle/input_handler)
Input子系统是linux kernel中与部分外围器件驱动联系比较紧密的模块,常用于Sensor,TP(touch panel),power key等器件的驱动.这类模块有个共同特点:字符设备,且 ...
- 第一篇文章,做个纪念
第一篇文章,做个纪念,这个blog好吗?拭目以待! 转载于:https://blog.51cto.com/197536/88241
- 《Ansible权威指南 》一 第一篇 Part 1 基础入门篇
本节书摘来自华章出版社<Ansible权威指南 >一书中的第1章,第1.1节,李松涛 魏 巍 甘 捷 著更多章节内容可以访问云栖社区"华章计算机"公众号查看. 第一篇 ...
- 研究生第一篇科研论文常犯问题总结
↑ 点击蓝字 关注视学算法 作者丨喻海良,中南大学教授,博士生导师 来源|http://blog.sciencenet.cn/blog-117889-1018759.html 极市导读 本文作者为中南 ...
- Webpack系列-第一篇基础杂记
系列文章 Webpack系列-第一篇基础杂记 Webpack系列-第二篇插件机制杂记 Webpack系列-第三篇流程杂记 前言 公司的前端项目基本都是用Webpack来做工程化的,而Webpack虽然 ...
- 蒟蒻的第一篇博客CF1041C Coffee Break(二分+贪心+set)
CF1041C Coffee Break(二分+贪心+set) 描述 Recently Monocarp got a job. His working day lasts exactly mm min ...
- Spotify敏捷模式详解三部曲第一篇:研发团队
本文转自:Scrum中文网 引言 2018年4月,来自北欧瑞典的音乐流媒体公司.百亿美元独角兽Spotify创造了历史,它成为了当代上市公司当中,第一家通过"直接上市"的方式在美国 ...
最新文章
- Windows下Unity5x创建和打开游戏工程
- 顶级风投First Round Capital对创业者的30个建议
- 三维重建7:Visual SLAM算法笔记
- mysql数据库及应用_mysql数据库介绍及应用
- 交替领先的赛跑(洛谷P1568题题解,Java语言描述)
- 英文c语言笔试题,关于C语言模拟笔试题
- WannaCry反思:传统安全理念遭遇马奇诺防线式溃败
- JavaScript:执行机制
- 第三十一篇 玩转数据结构——并查集(Union Find)
- 10亿级流数据交互查询,为什么抛弃MySQL选择VoltDB?
- Java对List集合排序
- 《第一行代码》完结篇
- kindeditor 编辑器手机访问默认为HTML编辑
- 零基础CSS入门教程(24)–内联/内部/外部样式
- matlab如何用二分法求函数零点,用二分法求函数的零点及二分法定义
- 计算机一级高级办公软件,计算机一级与高级办公软件
- 获取每日 联想电脑 开机锁屏壁纸
- 直销银行二三事之对公业务
- 关于html中锚点功能的使用
- C++ 汇编代码分析——递归函数调用、浮点数比较、选择语句