第1章 VisualC++开发环境的初步实践 1
1.1 【案例1.1】圆类的定义与使用 2
1.2 【案例1.2】口令对话框 5
1.3 VisualC++开发环境概述 11
1.3.1 常用菜单 11
1.3.2 项目工作区与项目 13
1.3.3 资源与资源编辑器 16
1.4 阅读材料 21
1.4.1 工具栏的显示与隐藏 21
1.4.2 Debug版本和Release版本介绍 22
习题 23
第2章 面向对象程序设计 24
2.1 基本概念 25
2.1.1 类和对象 25
2.1.2 封装 25
2.1.3 继承 25
2.1.4 多态性 26
2.2 【案例2.1】矩形类的定义与使用(类和对象) 26
2.2.1 类的定义 28
2.2.2 构造函数 29
2.2.3 析构函数 30
2.2.4 对象的定义和使用 31
2.3 【案例2.2】长方体类的定义与使用(继承性与派生类) 32
2.3.1 派生类的定义 33
2.3.2 派生类的构造函数与析构函数 33
2.4 【案例2.3立方体、球、圆柱类的定义(多态性) 34
2.4.1 两种多态性 35
2.4.2 静态联编 35
2.4.3 虚函数 37
2.5 阅读材料 39
2.5.1 静态类成员 40
2.5.2 友元 41
2.5.3 类模板 42
习题 43
第3章 Windows编程基础 45
3.1 事件驱动与Windows消息系统 46
3.1.1 事件驱动程序设计 46
3.1.2 Windows消息 46
3.1.3 Windows消息系统 47
3.2 Windows窗口 50
3.2.1 Windows的窗口 50
3.2.2 Windows应用程序执行过程. 52
3.2.3 【案例3.1】求解一元二次方程 53
3.3 MFC简介 58
3.3.1 MFC概述与MFC消息处理 58
3.3.2 【案例3.2】鼠标、键盘和用户自定义消息 64
3.4 阅读材料 70
3.4.1 Windows中的数据类型 70
3.4.2 MFC中类的层次结构和常用类 70
3.4.3 MFC AppWizard创建的程序框架 71
3.4.4 MFC应用程序的启动流程 73
习题 75
第4章 对话框与控件 77
4.1 对话框概述 78
4.1.1 对话框控件 78
4.1.2 控件的创建与使用 80
4.1.3 访问控件 83
4.2 静态控件 84
4.2.1 静态控件概述 84
4.2.2 静态控件属性 84
4.2.3 【案例4.1】欢迎Flash界面的设计 85
4.3 编辑框 87
4.3.1 属性和风格 87
4.3.2 基本操作 88
4.3.3 编辑控件的通知消息 89
4.4 按钮类控件 89
4.4.1 按钮类控件概述 89
4.4.2 按钮类的消息 90
4.4.3 【案例4.2】登录界面的设计 90
4.5 列表类控件 92
4.5.1 列表框 92
4.5.2 组合框 95
4.5.3 列表视图 97
4.5.4 【案例4.3】操作主界面的设计 99
4.6 滚动类控件 104
4.6.1 属性 104
4.6.2 操作 105
4.6.3 消息WMHSCROLL和WMVSCROLL 107
4.6.4 【案例4.4】改变填充圆的颜色的程序设计 108
4.7 阅读材料 112
4.7.1 通用对话框 112
4.7.2 消息对话框 116
习题 117
第5章 图形图像(绘图) 119
5.1 图形设备接口 120
5.1.1 GDI 120
5.1.2 设备环境类(CDC) 120
5.1.3 设备环境的使用 121
5.2 CDC类概述 122
5.2.1 常用的GDI对象 122
5.2.2 CDC中的绘图操作 129
5.2.3 【案例5.1】绘制时钟 133
5.3 阅读材料—【案例5.2】使用OpenGL制作旋转球体 136
习题 139
第6章 菜单、工具栏和状态栏 141
6.1 菜单 142
6.1.1 菜单类CMenu概述 142
6.1.2 【案例6.1】“绘制曲线”菜单与快捷键 146
6.1.3 【案例6.2】“绘图”快捷菜单 152
6.2 工具栏 153
6.2.1 工具栏类CToolBar概述 153
6.2.2 【案例6.3】“绘图”工具栏. 157
6.3 状态栏 159
6.3.1 状态栏类CStatusBar概述 159
6.3.2 状态栏的常用操作 161
6.3.3 【案例6.4】状态栏窗格的添加与信息提示 162
6.4 阅读材料—给对话框添加菜单、工具栏与状态栏 164
习题 167
第7章 数据库编程 169
7.1 常用SQL语句 170
7.1.1 数据库表管理语句 170
7.1.2 数据库更新语句 171
7.1.3 SELECT语句 171
7.2 MFCODBC概述 175
7.2.1 CDatabase类的用法 175
7.2.2 CRecordset类的用法 178
7.2.3 CRecordView类 184
7.2.4 CDBException类 185
7.3 ADO概述 185
7.3.1 ADO对象模型 185
7.3.2 两个有用的类—_bstr_t和_variant_t 186
7.3.3 使用ADO的步骤与方法 186
7.4 数据库开发案例 192
7.4.1 【案例7.1】基于ODBC的教职工信息管理系统 192
7.4.2 【案例7.2】基于ADO对象的教职工信息管理系统 205
7.4.3 【案例7.3】基于ADOData控件的教职工信息管理系统 214
7.5 阅读材料 220
7.5.1 动态配置ODBC数据源 220
7.5.2 使用ODBC创建/读取Excel文件 221
习题 223
第8章 保存和恢复工作—文件的存取 225
8.1 文档串行化 226
8.1.1 对象串行化 226
8.1.2 使对象可串行化 227
8.1.3 【案例8.1】串行化实现通讯录 228
8.2 CFile类 240
8.2.1 CFile类的操作 241
8.2.2 【案例8.2】使用CFile类实现通讯录 244
习题 251
第9章 学生信息管理系统 252
9.1 系统分析 253
9.1.1 需求分析 253
9.1.2 可行性分析 253
9.2 总体设计 253
9.2.1 项目规划 253
9.2.2 系统功能架构图 254
9.2.3 开发及运行环境 254
9.3 数据库设计 254
9.3.1 数据库需求分析 254
9.3.2 数据库逻辑结构设计与实现 255
9.4 系统实现 256
9.4.1 添加ADO连接类CADOConn 256
9.4.2 主窗体设计 257
9.4.3 系统登录模块设计 258
9.4.4 学生基本信息管理模块设计 260
9.4.5 课程管理模块设计 267
9.4.6 成绩管理模块设计 268
9.4.7 打印预览与打印模块的设计 277
9.4.8 系统用户管理模块设计 285
9.5 应用程序发布 287
9.5.1 打包发布前的准备 287
9.5.2 使用InstallShield forVC++工具打包发布 288
课程设计 294
参考文献 296