| 作者 |
| (美)Mickey Williams |
| 丛书名 |
| 自学通系列 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9787111069614 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 Visual C++ 6.0是当今最前沿的软件开发工具,本书以精炼的语言、简洁的例子向读者介绍了它的全新特性,内容涵盖可视化控件和ActiveX控件的使用、Windows和MFC结构的组解以及信息的阅读、书写与存储,并详细阐述了如何为程序增添Internet功能。 本书是为使用Visual C++进行程序设计的初、中级用户编写的,结构清晰,由浅入深,乃是广大软件开发人员的入门必备。 |
| 目录 |
| 目 录 引言 第一部分 Visual C++6起步 第1学时 使用Visual C++ 6 1 1.1 浏览Visual C++ 6 1 1.1.1 Visual C++集成开发环境 1 1.1.2 Developer Studio包含的编程工具 2 1.1.3 用Developer Studio Wizards 产生代码 2 1.1.4 MFC 库 3 1.2 Developer Studio初步 3 1.2.1 浏览Microsoft Developer Network 库的在线帮助 3 1.2.2 Visual C++编辑器 4 1.2.3 使用编辑命令 5 1.3 创建你的第一个C++程序 5 1.3.1 开始创建第一个程序 5 1.3.2 编辑你的第一个C++源程序 6 1.3.3 存储一个源文件 7 1.3.4 建立Hello项目 7 1.3.5 运行你的第一个C++程序 7 1.4 用AppWizard创建一个Windows程序 8 1.4.1 用AppWizard建立Windows 应用程序 8 1.4.2 浏览HelloMFC AppWizard项目 10 1.4.3 用MFC处理输出 10 1.5 总结 11 1.6 问题与解答 11 1.7 工作室 11 1.7.1 小测验 11 1.7.2 练习 12 第2学时 编写简单的Visual C++程序 13 2.1 C++程序中的通用元素 13 2.1.1 基本C++数据类型 13 2.1.2 理解类型安全 14 2.1.3 使用不同的变量类型 14 2.1.4 给变量命名 15 2.1.5 给变量赋值 16 2.2 一个简单的C++程序 17 2.2.1 创建Hello2项目 17 2.2.2 为你的程序创建源文件 17 2.2.3 运行Hello2程序 18 2.2.4 分析Hello2程序 18 2.3 总结 20 2.4 问题与解答 20 2.5 工作室 21 2.5.1 小测验 21 2.5.2 练习 21 第3学时 函数、结构和类 22 3.1 什么是表达式和语句 22 3.1.1 语句 22 3.1.2 声明 22 3.1.3 赋值 22 3.1.4 其他的通用表达式和运算符 23 3.2 使用函数 23 3.2.1 声明函数原形 24 3.2.2 定义函数 24 3.2.3 函数调用 24 3.3 什么是结构 25 3.4 什么是类 26 3.4.1 C++类的一部分 26 3.4.2 类对实例 27 3.4.3 构造函数 27 3.4.4 析构函数 27 3.4.5 一个简单C++类的例子 27 3.5 矩形框和区域 29 3.6 总结 29 3.7 问题与解答 29 3.8 工作室 30 3.8.1 小测验 30 3.8.2 练习 30 第二部分 对话框和基本控件 第4学时 使用对话框 31 4.1 什么是对话框 31 4.2 使用对话框作输入 32 4.3 在Visual C++中创建对话框 32 4.3.1 添加消息框 32 4.3.2 添加对话框 33 4.3.3 按用户需要修改对话框的属性 34 4.3.4 给你的对话框添加一个控件 36 4.3.5 创建一个对话框类 36 4.3.6 添加消息句柄来初始化对话框 37 4.3.7 给新对话框添加选择菜单 38 4.4 创建基于对话框的项目 39 4.4.1 AppWizard对创建基于对话框 的项目的支持 39 4.4.2 浏览HelloDialog的项目 40 4.4.3 使用对话框编辑器 40 4.5 总结 40 4.6 问题与解答 40 4.7 工作室 41 4.7.1 小测验 41 4.7.2 练习 41 第5学时 按钮控件 42 5.1 什么是按钮 42 5.1.1 什么是Push buttons 42 5.1.2 什么是Radio buttons 42 5.1.3 什么是Check boxes 42 5.1.4 什么是Owner-drawn buttons 43 5.1.5 什么是 Group boxes 43 5.1.6 MFC对控件的支持 43 5.1.7 一个应用按钮控件的简单项目 43 5.2 为按钮设置成员变量 46 5.2.1 向Dialog Box Class(对话框类) 添加按钮事件 46 5.2.2 改变按钮标识 47 5.3 用条件语句调控程序 47 5.3.1 使用if语句 47 5.3.2 使用Compound语句 48 5.3.3 在if语句中使用else 48 5.3.4 使用switch语句 48 5.5 启用或禁用按钮 49 5.6 隐藏按钮 50 5.7 定义或设定Tab键切换顺序 50 5.8 总结 51 5.9 问题与解答 51 5.10 工作室 51 5.10.1 小测验 51 5.10.2 练习 52 第6学时 使用编辑控件 53 6.1 理解编辑控件 53 6.1.1 为什么使用编辑控件 53 6.1.2 MFC对编辑控件的支持 53 6.1.3 建一个SDI的测试项目 54 6.1.4 给对话框添加编辑控件 54 6.2 编辑控件的属性 55 6.3 将CEdit 对象与编辑控件相关联 55 6.4 接收从编辑控件中输入的文本 56 6.5 用DDV和DDX例行程序给对话框 传递参数 56 6.5.1 为什么使用DDV和DDX 57 6.5.2 使用DDV和DDX例行程序 57 6.5.3 使控件与成员变量值相关 58 6.5.4 使用DDX函数实现编辑控件 的信息交换 58 6.6 总结 59 6.7 问题与解答 59 6.8 工作室 59 6.8.1 小测验 59 6.8.2 练习 60 第7学时 使用列表框和组合框 61 7.1 什么是列表框 61 7.1.1 为什么使用列表框 61 7.1.2 MFC对列表框的支持 61 7.2 给对话框加入列表框 61 7.2.1 列表框属性 62 7.2.2 使用ClistBox类 63 7.2.3 为列表框增加一个列表项 63 7.2.4 从列表框中删除列表项 64 7.2.5 接收列表框消息 64 7.3 什么是组合框 65 7.3.1 组合框的属性 65 7.3.2 MFC对组合框的支持 66 7.3.3 组合框的实例 67 7.4 使用循环 69 7.4.1 使用 while 循环 69 7.4.2 使用do-while循环 69 7.4.3 使用 for 循环 70 7.5 总结 70 7.6 问题与解答 70 7.7 工作室 71 7.7.1 小测验 71 7.7.2 练习 71 第三部分 Windows 和 MFC结构 第8学时 消息和事件驱动编程 73 8.1 理解Windows编程模式 73 8.2 什么是消息 73 8.3 一个测试鼠标击键的程序 74 8.3.1 什么是消息队列 74 8.3.2 如何处理消息 75 8.4 用ClassWizard处理消息 75 8.4.1 MouseTst处理的消息 76 8.4.2 更新MouseTst View类 76 8.4.3 运行MouseTst 78 8.5 什么是MFC基类 78 8.5.1 CObject基类 78 8.5.2 CWnd 基类 78 8.5.3 使用CObject和CWnd基类的实例 79 8.6 总结 82 8.7 问题与解答 82 8.8 工作室 82 8.8.1 小测验 82 8.8.2 练习 82 第9学时 文档与视图结构 83 9.1 Visual C++ 对文档与视图的支持 83 9.1.1 SDI和MDI应用 84 9.1.2 为什么要用文档与视图 84 9.1.3 使用MFC AppWizard 84 9.1.4 使用ClassWizard 84 9.2 指针变量与引用型变量 85 9.2.1 指针运算符与取址运算符 85 9.2.3 使用new 和delete 来建立动态 对象 85 9.2.4 使用new[]和delete[] 建立数组 88 9.2.5 使用派生类指针变量 89 9.2.6 使用指向基类的指针变量 89 9.2.7 使用虚拟函数 89 9.3 探索Document/View接口 90 9.3.1 创建数据模型 91 9.3.2 初始化文档的内容 91 9.3.3 取文档指针 92 9.4 总结 93 9.5 问题与解答 93 9.6 工作室 94 9.6.1 小测验 94 9.6.2 练习 94 第10学时 菜单 95 10.1 菜单是什么 95 10.1.1 命令执行过程 95 10.1.2 哪个类处理菜单选中引发的消息 96 10.2 建立一个菜单 96 10.3 添加新的菜单列表项 97 10.3.1 打开菜单资源 97 10.3.2 编辑菜单资源 98 10.3.3 菜单列表项属性 98 10.3.4 添加一个消息处理函数 99 10.4 建立快捷菜单 99 10.4.1 为弹出式菜单建立资源 100 10.4.2 添加消息处理函数 100 10.4.3 陷阱消息 101 10.5 使用加速键 102 10.5.1 显示加速键资源 103 10.5.2 添加加速键 103 10.5.3 一个加速键范例 104 10.6 总结 104 10.7 问题与解答 104 10.8 工作室 105 10.8.1 小测验: 105 10.8.2 练习 105 第四部分 图形接口 第11学时 设备上下文 107 11.1 设备上下文是什么 107 11.1.1 GDI 对象的类型 107 11.1.2 设备上下文的类型 108 11.1.3 硬件无关性 108 11.2 怎样使用设备上下文 108 11.2.1 Wizard支持设备上下文 109 11.2.2 选择GDI对象 109 11.3 堆对象 110 11.4 设置设备上下文图像 模式(map mode) 110 11.5 一个设备上下文例子 110 11.5.1 建立图像模式对话框 111 11.5.2 从设备上下文中接收信息 112 11.6 在Windows应用程序中使用颜色 115 11.7 总结 115 11.8 问题与解答 116 11.9 工作室 116 11.9.1 小测验 116 11.9.2 练习 116 第12学时 使用画笔和画刷 117 12.1 什么是画笔 117 12.1.1 画笔的类型 117 12.1.2 使用CPen类 118 12.1.3 使用堆画笔 119 12.2 用画笔绘画 119 12.2.1 修改图纸模式对话框 120 12.2.2 修改CDCTest类 120 12.2.3 修改CDCTestView成员函数 120 12.3 什么是画刷 123 12.3.1 MFC对画刷的支持 123 12.3.2 构造画刷 124 12.3.3 逻辑画刷 124 12.3.4 使用堆画刷 125 12.3.5 使用普通颜色对话框 125 12.3.6 允许用户控制颜色 126 12.3.7 改变对话框和控件的颜色 127 12.3.8 更新CDCTestView类 128 12.3.9 在CDCTestView类中使用画刷 128 12.4 总结 130 12.5 问题和解答 130 12.6 工作室 131 12.6.1 小测验 131 12.6.2 练习 131 第13学时 字体 132 13.1 什么是字体 132 13.1.1 字体类型 132 13.1.2 字体家族 133 13.2 指定字体属性 133 13.2.1 字体高度和宽度属性 134 13.2.2 字体特性集 134 13.2.3 影响字体输出的属性 135 13.2.4 字体间距和家族属性 135 13.2.5 字体宽度属性 136 13.2.6 其他字体属性 137 13.3 用MFC来创建字体的例子 137 13.3.1 用CFont创建字体 137 13.3.2 用LOGFONT结构创建字体 137 13.4 选择并配置正确的字体 138 13.4.1 使用堆字体对象 138 13.4.2 为窗体设定字体 139 13.4.3 使用普通字体对话框 139 13.5 编制字体 139 13.5.1 为Common Font(普通)字体 对话框添加支持 139 13.5.2 添加一个LOGFONT变量 到CDCTestView类 139 13.5.3 添加一个新的菜单项 140 13.5.4 修改OnDraw成员函数 140 13.6 总结 141 13.7 问题与解答 141 13.8 工作室 142 13.8.1 小测验 142 13.8.2 练习 142 第14学时 图标和光标 143 14.1 什么是图标 143 14.2 用图像编辑器创建一个新的图标 143 14.2.1 插入一个新的图标资源 144 14.2.2 改变程序的图标 144 14.2.3 在你的程序中加载图标 144 14.2.4 在按钮上显示图标 145 14.3 什么是光标 147 14.4 在Winows程序中使用光标 147 14.4.1 创建光标资源 147 14.4.2 为光标添加一个热点 148 14.4.3 修改一个光标 148 14.4.4 条件改变光标 149 14.4.5 使用标准光标 149 14.4.6 将光标改为沙漏 150 14.5 总结 151 14.6 问题与解答 151 14.7 工作室 152 14.7.1 小测验 152 14.7.2 练习 152 第五部分 通用控件 第15学时 旋钮、进度条和滑块控件 153 15.1 标准控件 153 15.2 旋钮控件 153 15.2.1 使用旋钮控件 154 15.2.2 将旋钮控件加到对话框中 154 15.2.3 旋钮控件的属性 154 15.2.4 添加一个关联控件 155 15.2.5 使用CSpinButtonCtrl类 155 15.2.6 改变旋钮控件的行为 156 15.3 使用滑块控件 156 15.3.1 决定何时使用滑块控件 156 15.3.2 滑块控件的属性 157 15.4 使用进度控件 157 15.4.1 使用滑块更新进度控件 158 15.4.2 初始化滑块和进度控件 159 15.4.3 处理从滑块到进度控件的消息 159 15.5 总结 160 15.6 问题与解答 160 15.7 工作室 160 15.7.1 小测验 160 15.7.2 练习 161 第16学时 使用位图和图像列表 162 16.1 什么是位图 162 16.1.1 使用Visual C++创建位图 162 16.1.2 向项目添加位图 162 16.1.3 加载并显示位图 163 16.2 什么是图像列表 164 16.2.1 透明图像 165 16.2.2 覆盖图像 165 16.3 使用图像列表 165 16.3.1 创建图像列表 165 16.3.2 使用CImageListDraw函数 显示图像列表 167 16.3.3 显示透明图像 168 16.3.4 显示覆盖图像 169 16.4 总结 169 16.5 问题与解答 170 16.6 工作室 170 16.6.1 小测验 170 16.6.2 练习 170 第17学时 列表视图控件 171 17.1 什么是列表视图控件 171 17.2 列表视图控件的属性 172 17.3 使用一个列表视图控件 172 17.3.1 将图像列表与列表控件相关联 173 17.3.2 创建图像列表 174 17.3.3 向列表视图控件添加项目 174 17.3.4 决定选择哪个项目 176 17.3.5 对CListExDlg类的修改 176 17.3.6 改变列表视图控件的当前视图 177 17.3.7 在视图类型之间切换 178 17.4 总结 179 17.5 问题与解答 179 17.6 工作室 180 17.6.1 小测验 180 17.6.2 练习 180 第18学时 树形视图控件 181 18.1 什么是树形视图控件 181 18.2 支持MFC的树形视图控件 182 18.3 把树形视图控件用作视图 182 18.3.1 向树形视图中添加项目 182 18.3.2 向树形视图控件增加格式 183 18.4 把树形视图控件加到对话框中 184 18.4.1 设置树视图控件属性 185 18.4.2 创建图像列表控件 186 18.4.3 修改对话框类 186 18.5 从树形视图控件中删除条目 187 18.6 执行内置的卷标编辑 188 18.7 总结 189 18.8 问题与解答 189 18.9 工作室 190 18.9.1 小测验 190 18.9.2 练习 190 第19学时 使用ActiveX 控件 191 19.1 什么是ActiveX控件 191 19.2 为什么要使用ActiveX控件 191 19.3 如何使用ActiveX控件 191 19.3.1 使用Components and ControlsGallery (组件库和控件库) 192 19.3.2 向对话框编辑器中增加 ActiveX控件 192 19.3.3 使用ClassWizard 配置 ActiveX控件 192 19.4 使用ActiveX定制控件的实例 193 19.4.1 什么是网格控件 194 19.4.2 向对话框编辑器添加 ActiveX控件 194 19.4.3 向主对话框增加网格控件 194 19.4.4 初始化网格控件 195 19.4.5 检测网格控件事件 196 19.4.6 重新计算网格控件的内容 197 19.5 总结 198 19.6 问题和解答 198 19.7 工作室 199 19.7.1 小测验 199 19.7.2 练习 199 第六部分 高级MFC编程 第20学时 动态HTML 201 20.1 什么是动态HTML 201 20.2 Visual C++对动态HTML的支持 202 20.2.1 漫游(Navigating) 202 20.2.2 有用的ChtmlView 类成员函数 203 20.2.3 向用户程序添加动态HTML 203 20.3 使用MFC和动态HTML 204 20.3.1 使用CHtmlView的简单浏览 204 20.3.2 浏览源文件 204 20.3.3 浏览用户的主页 206 20.3.4 使用动态HTML 文档资源 206 20.4 总结 207 20.5 问题与解答 208 20.6 工作室 208 20.6.1 小测验 208 20.6.2 练习 208 第21学时 打印 209 21.1 在Windows程序中如何进行打印 209 21.2 理解MFC打印例程 209 21.2.1 创建MFC打印示例程序 210 21.2.2 检查当前打印输出的状态 211 21.2.3 使用OnPreparePrinting 函数 211 21.2.4 使用OnBeginPrinting 函数 211 21.2.5 使用OnPrepareDC 函数 211 21.2.6 使用OnPrint 函数 212 21.2.7 使用OnEndPrinting 函数 212 21.3 查询打印设备上下文关联 212 21.4 增加打印功能到MFC Print 示例程序中 213 21.4.1 初始化和清除打印资源 213 21.4.2 为打印为分配资源 213 21.4.3 多页打印 215 21.4.4 在OnPrint中用OnPrint函数 打印操作报告 215 21.4.5 打印之后释放资源 217 21.5 总结 218 21.6 问题与解答 218 21.7 工作室 218 21.7.1 小测验 218 21.7.2 练习 218 第22学时 用MFC保存程序数据 219 22.1 什么是持久性和串行化 219 22.2 为什么要使用串行化 219 22.3 Document/View串行化实例 220 22.3.1 用于串行化的MFC类 220 22.3.2 使用插入和提取操作符 220 22.3.3 使用串行化宏 221 22.3.4 扩充串行化函数 222 22.3.5 创建串行化集合 223 22.4 Document/View应用程序 如何串行化 224 22.4.1 创建新文档 224 22.4.2 存储文档 224 22.4.3 关闭文档 225 22.4.4 加载文档 225 22.5 总结 229 22.6 问题和解答 230 22.7 工作室 230 22.7.1 小测验 230 22.7.2 练习 230 第23学时 表单视图 231 23.1 什么是表单视图 231 23.1.1 滚动视图 232 23.1.2 编辑视图 232 23.2 使用表单视图 233 23.2.1 为表单视图创建一个 对话框资源 233 23.2.2 向项目中添加表单视图 234 23.2.3 使用CFormView代替CView 234 23.2.4 处理表单视图类中的 事件和消息 235 23.2.5 处理OnInitialUpdate 236 23.2.6 防止视图改变大小 236 23.4 总结 237 22.5 问题与解答 237 23.6 工作室 238 23.6.1 小测验 238 23.6.2 练习 238 第24学时 创建ActiveX 控件 239 24.1 什么是ActiveX 控件 239 24.2 ActiveX 控件属性、事件和方法 239 24.2.1 属性(property) 239 24.2.2 事件(Event) 240 24.2.3 方法(Method) 240 24.3 创建ActiveX 控件 240 24.3.1 创建ActiveX 控件项目 240 24.3.2 MFC 对ActiveX 控件的支持 242 24.3.3 绘制控件 242 24.3.4 定义属性 243 24.3.5 在样本控件中处理字符输入 245 24.3.6 修改控件的位图 246 24.4 测试ActiveX 控件 246 24.4.1 为控件选择测试容器 246 24.4.2 使用ActiveX 控件测试容器 247 24.4.3 测试属性和方法 248 24.5 总结 248 24.6 问题与解答 249 24.7 工作室 249 24.7.1 小测验 249 24.7.2 练习 249 第七部分 附 录 附录A 小测验答案 251 附录B Developer Studio 集成 开发环境 260 |