本书是矢量图形系统开发技术和VC++编程技术的集合体。以矢量图形系统的开发为主线贯穿全书,全面介绍和分析了MFC程序设计技术和矢量图形系统各功能的开发。包括各种MFC辅助工具的使用方法、与图形有关的MFC类、文档和视图的实现、鼠标交互绘图等。\r\n
\r\n
第一篇 VC++程序设计技术要点 \r\n\r\n 第1章 MFC应用程序设计开发工具 \r\n\r\n 1. 1 使用MFC AppWizard \r\n\r\n 1. 1. I MFC AppWizard的启动 \r\n\r\n 1. 1. 2 利用MFC AppWizard产生MFC应用程序的步骤 \r\n\r\n 1. 2 使用ClassView \r\n\r\n 1. 2. 1 启动ClassView \r\n\r\n 1. 2. 2 编辑定位 \r\n\r\n 1. 2. 3 增加类 \r\n\r\n 1. 2. 4 增加类的成员 \r\n\r\n 1. 3 使用ResourceView \r\n\r\n 1. 3. 1 ResourceView的调用 \r\n\r\n 1. 3. 2 ResourceView工作分析 \r\n\r\n 1. 4 使用FileView \r\n\r\n 1. 4. 1 打开一个程序项目 \r\n\r\n 1. 4. 2 FileView相关的操作功能 \r\n\r\n 1. 5 使用ClassWizard \r\n\r\n 1. 5. 1 Windows消息 \r\n\r\n 1. 5. 2 消息处理函数 \r\n\r\n 1. 5. 3 ClassWizard的作用和启动 \r\n\r\n 1. 5. 4 ClassWizard管理消息处理函数 \r\n\r\n 1. 5. 5 ClassWizard管理重载虚函数 \r\n\r\n 1. 5. 6 CiassWizard管理映射变量 \r\n\r\n 1. 5. 7 管理Automation和ActiveX事件 \r\n\r\n 1. 5. 8 重新构造开发项目的ClassWizard工作信息 \r\n\r\n 1. 6 使用DataView \r\n\r\n 1. 7 管理多个程序项目 \r\n\r\n 1. 8 使用各设计工具进行编程的建议 \r\n\r\n 第2章 MFC应用程序框架 \r\n\r\n 2. 1 MFC应用程序基本框架类和文件组成 \r\n\r\n 2. 1. 1 基本程序框架类 \r\n\r\n 2. 1. 2 应用程序的主要源文件组成 \r\n\r\n 2. 2 MFC应用程序中各个框架类的作用 \r\n\r\n 2. 3 MFC应用程序的执行步骤分析 \r\n\r\n 2. 4 MFC应用程序设计结构体系剖析 \r\n\r\n 2. 4. 1 标准菜单的执行分析 \r\n\r\n 2. 4. 2 修改标准菜单的执行功能 \r\n\r\n 2. 4. 3 MFC应用程序多态性的实现 \r\n\r\n 2. 4. 4 MFC应用程序中各框架类对象的相互调用关系 \r\n\r\n 第二篇 实现基本矢量图形系统 \r\n\r\n 第3章 与绘图有关的MFC类及操作 \r\n\r\n 3. 1 绘图类 \r\n\r\n 3. 1. 1 绘图类简介 \r\n\r\n 3. 1. 2 几个绘图类的主要差别 \r\n\r\n 3. 1. 3 绘图类的使用方法 \r\n\r\n 3. 2 绘图设备类 \r\n\r\n 3. 2. 1 CGdiObject类 \r\n\r\n 3. 2. 2 CPen类 \r\n\r\n 3. 2. 3 CBrush类 \r\n\r\n 3. 2. 4 CFont类 \r\n\r\n 3. 2. 5 CRgn类 \r\n\r\n 3. 2. 6 CPalette和CBitmap类 \r\n\r\n 3. 3 坐标映像方式 \r\n\r\n 3. 3. 1 Windows映像方式及其设置方法 \r\n\r\n 3. 3. 2 逻辑坐标与设备坐标的转换 \r\n\r\n 3. 4 窗口和视口 \r\n\r\n 3. 4. 1 窗口和视口的概念 \r\n\r\n 3. 4. 2 窗口和视口有关的操作函数 \r\n\r\n 3. 4. 3 窗口逻辑坐标与视口设备坐标的转换 \r\n\r\n 3. 5 其他绘图类操作函数 \r\n\r\n 3. 5. 1 选用绘图设备对象 \r\n\r\n 3. 5. 2 主要绘图属性设置函数 \r\n\r\n 第4章 实现基本矢量图形系统的文档和视图 \r\n\r\n 4. 1 组织矢量图形系统的图形元素类 \r\n\r\n 4. 1. 1 图形元素基类的组织 \r\n\r\n 4. 1. 2 直线类组织 \r\n\r\n 4. 1. 3 连续直线或多边形区域类组织 \r\n\r\n 4. 1. 4 圆类组织 \r\n\r\n 4. 1. 5 圆弧类组织 \r\n\r\n 4. 1. 6 标注文本类 \r\n\r\n 4. 1. 7 图形参数类 \r\n\r\n 4. 2 组织矢量图形系统的文档 \r\n\r\n 4. 2. 1 组织面向对象的文档存储管理机制 \r\n\r\n 4. 2. 2 利用MFC模板定义管理图形元素对象指针的对象 \r\n\r\n 4. 2. 3 实现矢量图形系统的文档 \r\n\r\n 4. 2. 4 实现文档的管理功能 \r\n\r\n 4. 3 实现矢量图形系统的视图 \r\n\r\n 4. 3. 1 组织实现坐标系 \r\n\r\n 4. 3. 2 实现各图形元素类的绘制函数 \r\n\r\n 4. 3. 3 视图类的OnDraw函数 \r\n\r\n 4. 3. 4 实现视图 \r\n\r\n 第5章 鼠标交互绘图 \r\n\r\n 5. 1 用鼠标绘图要解决的主要问题 \r\n\r\n 5. 1. 1 捕捉鼠标操作消息 \r\n\r\n 5. 1. 2 捕捉所有的鼠标输入 \r\n\r\n 5. 1. 3 在屏幕上拖动图形 \r\n\r\n 5. 1. 4 保存图形数据到文档 \r\n\r\n 5. 1. 5 将图形以实际的形态重画 \r\n\r\n 5. 2 加入一个绘图菜单 \r\n\r\n 5. 2. 1 增加菜单资源 \r\n\r\n 5. 2. 2 增加菜单的消息处理函数 \r\n\r\n 5. 3 交互绘制各种图形元素 \r\n\r\n 5. 3. 1 获得图形元素的惟一识别号 \r\n\r\n 5. 3. 2 绘制直线 \r\n\r\n 5. 3. 3 绘制连续直线和多边形区域 \r\n\r\n 5. 3. 4 绘制圆和圆形区域 \r\n\r\n 5. 3. 5 绘制圆弧 \r\n\r\n 5. 4 交互绘制标注文本 \r\n\r\n 5. 4. 1 对话框 \r\n\r\n 5. 4. 2 交互绘制标注文本的过程 \r\n\r\n 5. 4. 3 创建对话框资源 \r\n\r\n 5. 4. 4 实现标注文本对话框类 \r\n\r\n 5. 4. 5 实现标注文本交互绘制功能 \r\n\r\n 第6章 矢量图形系统的操作功能 \r\n\r\n 6. 1 增加图形操作菜单 \r\n\r\n 6. 1. 1 增加菜单资源 \r\n\r\n 6. 1. 2 增加消息处理函数 \r\n\r\n 6. 2 图形重画 \r\n\r\n 6. 2. 1 全屏重画 \r\n\r\n 6. 2. 2 局部重画 \r\n\r\n 6. 3 图形的放大和移动 \r\n\r\n 6. 3. 1 屏幕参数的计算方法 \r\n\r\n 6. 3. 2 图形放大和移动的实现 \r\n\r\n 6. 4 重画上屏和重画首屏 \r\n\r\n 6. 4. 1 需要记录屏幕状态 \r\n\r\n 6. 4. 2 实现重画上屏和重画首屏功能 \r\n\r\n 6. 5 显示全图 \r\n\r\n 6. 5. 1 各类图形元素边界矩形的计算 \r\n\r\n 6. 5. 2 实现显示全图功能 \r\n\r\n 6. 6 提高矢量图形系统重画速度的基本方法 \r\n\r\n 6. 6. 1 提高图形重画的速度 \r\n\r\n 6. 6. 2 提高图形重画速度的方法 \r\n\r\n 6. 6. 3 加快图形元素的绘制速度 \r\n\r\n 6. 7 实现滚动视图 \r\n\r\n 6. 7. 1 滚动视图的实现方法 \r\n\r\n 6. 7. 2 滚动区域参数设置 \r\n\r\n 6. 8 定制图形滚动功能 \r\n\r\n 6. 8. 1 确定滚动步长 \r\n\r\n 6. 8. 2 创建滚动条 \r\n\r\n 6. 8. 3 实现图形滚动功能 \r\n\r\n 第7章 图形的删除和恢复 \r\n\r\n 7. 1 鼠标点选图形元素 \r\n\r\n 7. 1. 1 各种图形元素的选中区域 \r\n\r\n 7. 1. 2 各种图形元素的点选判断函数 \r\n\r\n 7. 1. 3 选中图形元素的特殊显示 \r\n\r\n 7. 1. 4 实现点选图形元素功能 \r\n\r\n 7. 1. 5 放弃选中的图形元素 \r\n\r\n 7. 1. 6 图形元素的显示和选中顺序 \r\n\r\n 7. 2 图形元素的删除 \r\n\r\n 7. 2. 1 删除操作的类型 \r\n\r\n 7. 2. 2 从屏幕上删除图形元素的方法 \r\n\r\n 7. 2. 3 各类图形元素的删除操作 \r\n\r\n 7. 2. 4 实现图形元素删除操作 \r\n\r\n 7. 3 文档逆向操作 \r\n\r\n 7. 3. 1 逆向操作的含义 \r\n\r\n 7. 3. 2 记录文档编辑操作过程 \r\n\r\n 7. 3. 3 实现文档逆向操作 \r\n\r\n 7. 3. 4 实现操作过程的完全逆向化 \r\n\r\n 第8章 图形的存取功能 \r\n\r\n 8. 1 利用串行化存取文档 \r\n\r\n 8. 1. 1 CArchive类及CArchive对象的创建 \r\n\r\n 8. 1. 2 Serialize函数 \r\n\r\n 8. 1. 3 CObArray类的Serialize函数 \r\n\r\n 8. 2 实现矢量图形系统的存取功能 \r\n\r\n 8. 2. 1 实现各个图形元素类的串行化 \r\n\r\n 8. 2. 2 MFC框架程序的文档串行化机制 \r\n\r\n 8. 2. 3 实现矢量图形系统的文档存取功能 \r\n\r\n 8. 2. 4 SetModifiedFlag函数 \r\n\r\n 第9章 矢量图形系统的子图. 颜色. 图层管理 \r\n\r\n 9. 1 子图管理 \r\n\r\n 9. 1. 1 组织管理子图 \r\n\r\n 9. 1. 2 组织管理子图的图例 \r\n\r\n 9. 1. 3 创建子图的方法 \r\n\r\n 9. 2 管理各种图形参数 \r\n\r\n 9. 2. 1 管理颜色 \r\n\r\n 9. 2. 2 管理图层 \r\n\r\n 9. 2. 3 管理线型 \r\n\r\n 9. 2. 4 增加辅助绘图模式 \r\n\r\n 第10章 图形的打印输出 \r\n\r\n 10. 1 视图的打印机理和实现方法 \r\n\r\n 10. 1. 1 视图的打印机理 \r\n\r\n 10. 1. 2 打印功能的实现方法 \r\n\r\n 10. 2 实现矢量图形系统的打印功能 \r\n\r\n 10. 2. 1 实现图形分页打印功能 \r\n\r\n 10. 2. 2 实现具体的打印功能 \r\n\r\n 第11章 图形的旋转. 放缩和移动 \r\n\r\n 11. 1 图形旋转 \r\n\r\n 11. 1. 1 点与点的旋转操作 \r\n\r\n 11. 1. 2 各类图形元素的旋转操作 \r\n\r\n 11. 2 图形放缩 \r\n\r\n 11. 2. 1 一个点相对于基点的放缩操作 \r\n\r\n 11. 2. 2 实现各类图形元素的放缩操作 \r\n\r\n 11. 3 图形移动 \r\n\r\n 第三篇 开发矢量图形系统的高级功能 \r\n\r\n 第12章 线型的制定和绘制 \r\n\r\n 12. 1 线型的描述方式和实现方法 \r\n\r\n 12. 1. 1 线型的描述方式 \r\n\r\n 12. 1. 2 组成线型的图形元素 \r\n\r\n 12. 1. 3 实现线型所必须具备的功能 \r\n\r\n 12. 2 实现矢量图形系统的线型 \r\n\r\n 12. 2. 1 线型体的数据定义 \r\n\r\n 12. 2. 2 线型体的绘制 \r\n\r\n 12. 2. 3 绘制使用线型的直线段 \r\n\r\n 12. 2. 4 绘制使用线型的圆弧 \r\n\r\n 第13章 实现多边形区域的子图填充 \r\n\r\n 13. 1 填充子图的结构组织和制定 \r\n\r\n 13. 2 绘制子图 \r\n\r\n 13. 2. 1 各类图形元素中用于子图绘制的函数 \r\n\r\n 13. 2. 2 实现子图的绘制功能 \r\n\r\n 13. 3 绘制填充子图 \r\n\r\n 13. 3. 1 计算子图的插入点 \r\n\r\n 13. 3. 2 绘制填充子图 \r\n\r\n 13. 4 剪裁填充子图 \r\n\r\n 13. 4. 1 各个图形元素类中包含剪裁功能的绘制函数 \r\n\r\n 13. 4. 2 实现子图的绘制功能 \r\n\r\n 第14章 图形元素的放大操作 \r\n\r\n 14. 1 限制图形元素放大倍数的原因 \r\n\r\n 14. 1. 1 VC++基本图形绘制函数的参数取值限制 \r\n\r\n 14. 1. 2 影响图形元素放大倍数的原因 \r\n\r\n 14. 2 解决图形放大倍数的方法 \r\n\r\n 14. 2. 1 对图形元素进行剪裁操作 \r\n\r\n 14. 2. 2 剪裁操作的实现 \r\n\r\n 第15章 大容量图形数据的存储 \r\n\r\n 15. 1 数据存储问题的由来 \r\n\r\n 15. 1. 1 目前系统组织图形元素数据的机制和方法 \r\n\r\n 15. 1. 2 最可能引起内存和性能问题的图形元素 \r\n\r\n 15. 2 大容量图形数据存储问题的解决方法 \r\n\r\n 15. 2. 1 方案的选择 \r\n\r\n 15. 2. 2 用硬盘临时文件组织存储CPline类图形元素顶点数据的方法 \r\n\r\n 第16章 图形元素的平面几何关系计算 \r\n\r\n 16. 1 直线与多边形区域的关系 \r\n\r\n 16. 1. 1 直线与直线的关系 \r\n\r\n 16. 1. 2 直线与多边形区域的相交关系 \r\n\r\n 16. 1. 3 连续直线与多边形区域的相交关系 \r\n\r\n 16. 2 圆弧与多边形区域的关系 \r\n\r\n 16. 2. 1 圆与直线的关系 \r\n\r\n 16. 2. 2 圆弧与直线的关系 \r\n\r\n 16. 2. 3 圆弧与多边形区域的关系 \r\n\r\n 16. 3 各类图形元素与圆形区域的关系 \r\n\r\n 16. 3. 1 圆与圆的关系 \r\n\r\n 16. 3. 2 圆弧与圆形区域的关系 \r\n\r\n 16. 3. 3 直线与圆形区域的关系 \r\n\r\n 16. 3. 4 连续直线与圆形区域的关系 \r\n\r\n 16. 4 两个多边形区域的相交. 相并. 剪裁关系 \r\n\r\n 16. 4. 1 两个多边形区域的交集 \r\n\r\n 16. 4. 2 两个多边形区域的并集 \r\n\r\n 16. 4. 3 一个多边形区域剪裁另外一个多边形区域 \r\n\r\n 16. 5 环形区域的相交. 相并. 剪裁计算的思路 \r\n\r\n 16. 5. 1 实心区域与环形区域的相交. 相并. 剪裁计算 \r\n\r\n 16. 5. 2 两个环形区域相交. 相并. 剪裁计算的思路和方法 \r\n\r\n 第17章 矢量图形系统的外部接口 \r\n\r\n 17. 1 读入其他图形系统的图形 \r\n\r\n 17. 1. 1 读入AutoCAD的DXF文件 \r\n\r\n 17. 1. 2 读入MapGIS明码文件 \r\n\r\n 17. 1. 3 读入系统自身格式的接口文件 \r\n\r\n 17. 2 输出可识别的接口文件 \r\n\r\n 17. 2. 1 通过DXF文件输出 \r\n\r\n 17. 2. 2 输出到自身定义的接口格式 \r\n\r\n 17. 2. 3 输出到数据库 \r\n\r\n 第18章 矢量显示位图 \r\n\r\n 18. 1 位图文件的格式 \r\n\r\n 18. 2 CBitmap类及CBitmap对象的初始化方法 \r\n\r\n 18. 2. 1 CBitmap类 \r\n\r\n 18. 2. 2 初始化CBitmap类对象的方法 \r\n\r\n 18. 3 显示位图的步骤和主要的位操作函数 \r\n\r\n 18. 3. 1 显示位图的步骤 \r\n\r\n 18. 3. 2 位图操作函数 \r\n\r\n 18. 4 显示位图的函数实现 \r\n\r\n 18. 4. 1 显示装载在资源文件中的位图 \r\n\r\n 18. 4. 2 通过HBITMAP句柄装载显示位图文件 \r\n\r\n 18. 4. 3 用画点法选择装入位图数据显示位图 \r\n\r\n 第19章 利用剪裁板剪裁. 移动和拷贝图形 \r\n\r\n 19. 1 剪裁板使用方法 \r\n\r\n 19. 1. 1 打开. 关闭. 清空剪裁板 \r\n\r\n 19. 1. 2 存取剪裁板 \r\n\r\n 19. 1. 3 注册和检查剪裁板格式 \r\n\r\n 19. 2 用剪裁板实现图形元素的剪裁. 移动和复制功能 \r\n\r\n 19. 2. 1 实现各图形元素数据的字符串表示 \r\n\r\n 19. 2. 2 将要剪裁的图形元素数据写入剪裁板 \r\n\r\n 19. 2. 3 从剪裁板中读出图形元素 \r\n\r\n 19. 2. 4 实现图形元素的剪裁. 拷贝和粘贴操作功能 \r\n\r\n 第20章 实现网络化的矢量图形系统 \r\n\r\n 20. 1 网络化矢量图形系统的方案选择 \r\n\r\n 20. 1. 1 不允许多用户同时编辑方式 \r\n\r\n 20. 1. 2 允许多用户同时编辑方式 \r\n\r\n 20. 2 实现图形元素的数据库记录化 \r\n\r\n 20. 2. 1 直线等图形元素和图形参数的数据库记录化 \r\n\r\n 20. 2. 2 连续直线的数据库记录化 \r\n\r\n 附录 代码光盘与技术支持 \r\n\r\n 参考书目 \r\n
\r\n
1999年9月, 作者编著出版了《Visual C++高级编程技术——开发实例剖析》一书, 对开发矢量图形系统的技术进行了介绍. 这本书出版以后, 受到了欢迎, 许多读者提出了宝贵的意见和建议, 以及在研发工作中遇到的新问题. 这些问题主要集中在开发矢量图形系统的一些高级功能上:像如何实现子图, 定制和使用任意的线型, 对区域进行填充, 计算图形元素间的叠加关系, 提高矢量图形的放大倍数, 用数据库存储矢量图形等等, 并希望作者予以回答和提供具体的帮助. 在这种情况下, 作者决定结合自己近年来从事的研究和开发工作, 编写一部全面介绍矢量图形系统开发技术的书, 以满足广大读者的需要. 本书除了对《Visual C++高级编程技术——开发实例剖析》一书的基本内容进行全面的优化和修正外, 还增加了许多在开发矢量图形系统中非常实用的全新内容, 如线型的制定和使用, 子图体的组织和编辑, 区域的子图填充, 提高矢量图形系统的放大倍数, 大容量图形数据的存储组织方法, 多边形区域的相交. 相并. 剪裁关系计算等.
矢量图形系统的开发, 是一个技术含量很高. 开发量很大的工作. 但在掌握其开发方法和开发技术的情况下, 可以开发出满足特殊要求的实用矢量图形系统, 并在灵活性. 可扩展性. 系统产品化. 系统版权. 技术积累等各个方面具有无可比拟的优点.
编写本书的思路
编写本书的思路, 在于以开发一个矢量图形系统为主线, 一步步引导读者去掌握面向对象程序设计的精髓, 全面分析MFC程序框架的组成和结构, 掌握矢量图形系统的开发思路和开发方法. 结合VC++开发技术, 实例开发矢量图形系统中的各种功能, 使读者能够从程序设计思想. 系统构筑. 数据组织. 专业算法. MPC程序设计技术. VC++开发工具应用等各个方面, 综合掌握程序设计的技术精华. 通过本书的介绍, 期望对读者能有所启发, 全面提高系统分析能力和设计能力, 并能够在掌握本书实例开发的矢量图形系统的基础上, 去完善各个功能, 开发出应用到各个领域的矢量图形系统.
本书的特点
作者多年从事利用VC++开发GIS, MIS, DSS, CAD, 电子表格等系统的实际研究和开发工作. 本书的大部分内容是实践经验和具体技术的提炼和总结.
本书从一个利用App Wizard生成的程序框架出发, 并依此为基础, 分析和组织矢量图形系统的数据结构, 开发实现了一个功能完善的矢量图形系统. 本书结合实际代码对系统进行了剖析, 帮助读者掌握系统的设计思路和各种开发技术. 开发方法, 引导读者进入实用系统的具体设计过程, 也就避免了枯燥无味的讲解.
本书中的内容是从实现思路. 实现方法和具体实现三个环节进行讲解的. 作者给出了以标准格式书写并经过全面调试的代码, 并对代码作了完整的中文注释, 使读者能够比较容易地理解和掌握书中的内容.
不论是初学者, 还是高级程序设计人员, 都能够从本书中学到开发思路. 系统构筑. 编程技术等方面的知识.
本书概要
本书共分为三篇.
第一篇介绍VC++程序设计要点. 第1章介绍和剖析AppWizard, ClassWizard, ClassView, ResourceView, FileView等MFC应用程序设计中必须或辅助使用的开发工具, 第2章剖析MFC应用程序框架, 介绍MFC程序框架的组成. 基本类和构成思路.
第二篇介绍具体开发实现一个基本矢量图形系统. 第3章介绍各种与图形系统设计有关的MFC类和与绘图有关的一些基本操作, 第4章介绍实现基本矢量图形系统的文档和视图, 第5章介绍鼠标交互绘制图形元素的方法, 实现直线. 连续直线或多边形区域. 圆或圆形区域. 圆弧. 标注文本等的交互绘制功能, 第6章介绍实现矢量图形系统的重画. 放缩. 移动. 回溯. 显示全图. 滚动等操作功能, 第7章介绍实现鼠标点选图形元素的功能, 实现删除图形元素及恢复删除操作的逆向操作功能, 第8章介绍利用串行化存取文档的方法, 实现图形外部文件存取功能, 第9章介绍矢量图形系统中的子图. 颜色. 图层的组织和管理功能, 第10章介绍打印的机理, 实现打印输出功能, 第11章介绍图形的旋转. 放缩和移动功能.
第三篇具体介绍开发实现矢量图形系统中的一些高级功能. 第12章介绍线型的描述方式和实现方法, 实现线型的定义和绘制功能, 第13章介绍多边形区域的子图填充方法, 实现子图的绘制. 剪裁绘制功能, 实现多边形区域的子图填充, 第14章分析影响矢量图形放大倍数的原因, 具体解决矢量图形系统的放大倍数问题, 第15章讨论编辑状态下大容量图形数据的存储组织方法, 实现两种存储组织顶点坐标数据的方法, 第16章具体介绍实现各类图形元素的平面几何关系计算, 实现各类图形元素与多边形区域, 圆弧与多边形区域, 各类图形元素与圆形区域, 两个多边形区域的相交. 相并. 剪裁等几何关系的计算, 讨论环形区域的相交. 相并. 剪裁计算的思路:第17章介绍矢量图形系统的外部接口, 第18章介绍矢量显示位图的方法, 具体实现三种矢量显示位图的方法, 第19章介绍剪裁板的使用技术, 利用剪裁板实现图形元素的拷贝. 剪裁. 粘贴等功能, 第20章介绍实现网络化的矢量图形系统的方案, 具体实现对各类图形元素数据表记录化的方法.
对读者的要求
读者应具有C和C++编程的一些基本知识. 受篇幅所限, 本书对具体的MFC类函数不做过多的说明, 读者可以结合一些VC++的参考手册阅读. 本书介绍的编程技术和开发实例是在VC++ 6. 0上实现的, 对VC++ 5. 0和VC++ 7. 0等版本同样适用.
曾学贵教授. 魏庆朝教授对本书的编写进行了悉心指导并提供了宝贵意见, 白雁. 万传风. 扬永平. 王彬. 郭文军. 郑顺义. 郑屹. 周敏等同志参加了本书的部分工作, 杜薇等同志参加了本书的录入工作, 在此一并感谢. 由于作者水平有限, 书中难免有错误和疏漏之处, 敬请各位专家. 老师和读者给予批评指正.
陈建春
2003年7月于北京交通大学