上篇 Borland C++ for Windows编程基础 1
第一章 Windows简介 1
1.1 Windows是什么 1
1.1.1 Windows的优点 1
1.1.2 Windows应用程序 3
1.2 Windows3.1的运行环境 3
1.3 Windows安装、启动和退出 4
1.3.1 安装Windows 4
1.3.3 退出Windows 5
1.4 Windows图形界面的基本成分 5
1.4.1 窗口的组成元素 5
1.4.2 窗口类型 7
1.4.3 图标类型 8
1.4.4 对话框 9
1.4.5 控制 10
第二章 Borland C++简介 13
2.1 C与Borland C++ 13
2.1.1 C语言的出现与发展 13
2.1.2 面向对象的程序设计(OOP) 14
2.1.3 Borland C++的出现 14
2.2 Borland C++3.1的运行环境 15
2.2.1 硬件环境 15
2.2.2 软件环境 15
2.3 Borland C++的安装 16
2.4 Borland C++的集成开发环境 16
2.4.1 Borland C++集成开发环境 16
2.4.2 Borland C++ for Windows集成开发环境 17
3.1 Windows与DOS的比较 19
第三章 Windows应用程序设计基础 19
3.2 一个简单的Windows程序 20
3.3 句柄 23
3.4 实例 23
3.5 Windows数据类型 23
3.6 Windows(API)函数 24
3.7 WinMain函数 24
3.7.1 WinMain函数的参数说明 25
3.7.2 注册窗口类 26
3.7.3 窗口的创建与显示 30
3.7.4 消息循环 33
3.8 窗口函数 34
3.9.2 用户包含文件 35
3.9 包含文件 35
3.9.1 WINDOWS.H 35
3.10 资源与资源描述文件 36
3.10.1 资源与资源文件 36
3.10.2 资源描述文件(.RC) 36
3.11 模块定义文件(.DEF) 36
3.12 资源生成工具(Resource Workshop) 37
3.13 在Borland C++ for Windows集成开发环境下开发Windows应用程序 37
第四章 C++对C的扩充(非对象部分) 39
4.1 词法 39
4.1.1 注释 39
4.1.2 标识符 39
4.2.1 C++显示输出 40
4.1.3 双字符常量 40
4.2 C++的输入/输出流简介 40
4.2.2 C++键盘输入 41
4.3 语言结构 43
4.3.1 强类型机制 43
4.3.2 变量的声明 43
4.3.3 Const的扩充作用 43
4.3.4 无名联合 45
4.3.5 使用默认参数值的函数 46
4.3.6 函数的重载 47
4.3.7 内联函数 48
4.3.8 new与delete运算 49
4.3.9 引用 49
5.1.1 定义类 52
5.1 类与对象的建立 52
第五章 类与对象 52
5.1.2 用类建立对象 53
5.2 类的封装与访问控制 56
5.2.1 类的封装性 56
5.2.2 类的访问控制 57
5.3 静态数据成员 60
5.4 成员函数 61
5.4.1 内联成员函数(inline) 61
5.4.2 构造函数和析构函数 64
5.5 友元 67
5.5.1 友元类 67
5.5.2 友元函数 68
5.6.1 单一继承 70
5.6 类的继承 70
5.6.2 多继承 73
5.7 对象与指针 77
5.7.1 类的指针 77
5.7.2 基类指针与派生类指针 78
5.7.3 this指针 80
5.8 对象作为参数传递给函数 81
5.8.1 值调用方式 81
5.8.2 地址调用方式 82
5.9 结构与类 84
5.10 类与多态性 84
5.10.1 成员函数的重载 84
5.10.2 运算符的重载 87
5.10.3 用友元函数重载运算符 91
5.11 继承与多态性 95
5.11.1 虚函数 95
5.11.2 纯虚函数与抽象类 97
下篇 利用ObjectWindows编写Windows应用程序 100
第六章ObjectWindows设计Windows应用程序的基本方法 100
6.1 ObjectWindows简介 100
6.2 一个最简单的ObjectWindows应用程序例子 103
6.3 TApplication类与应用程序类 104
6.3.1 TApplication类 104
6.3.2 应用程序类的定义 106
6.4 TWindow类与窗口类 107
6.4.1 TWindow类 107
6.4.2 窗口类的定义 109
6.5.1 生成应用程序对象 113
6.5 WinMain函数 113
6.5.2 初始化应用程序对象及执行消息循环 115
6.5.3 返回应用程序状态 116
6.6 响应消息成员函数 117
6.7 在Borland C++ for Windows集成环境下开发ObjectWindows应用程序 121
第七章 图形和正文显示 123
7.1 设备描述表 123
7.2 一个显示图形和正文的Oject Windows程序例子 124
7.3 WM-PAINT消息与Twindow::Paint成员函数 127
7.3.1 WM-PAINT消息 127
7.3.2 TWindows::Paint成员函数 127
7.4.1 画图 130
7.4 画图与显示正文 130
7.4.2 显示正文 134
7.5 颜色 135
7.6 绘图工具 136
7.6.1 涂刷 136
7.6.2 画笔 141
7.6.3 字体 144
第八章 位图处理 151
8.1 什么是位图 151
8.2 使用系统预定义位图 151
8.3 使用位图资源文件 155
8.4 位图的动态生成和显示 158
8.5 位图的缩放显示 161
8.6 位图作为涂刷 163
9.1 什么是图标 166
9.2 资源文件图标 166
第九章 图标 166
9.3 画出的图标 169
9.4 系统预定义图标 172
第十章 光标 175
10.1 什么是光标 175
10.2 使用系统预定义光标 175
10.3 使用自创建光标 177
第十一章 菜单 181
11.1 什么是菜单 181
11.2 在资源描述文件中定义菜单 181
11.4.1 在应用程序中包含菜单 183
11.4.2 应用程序对菜单的响应处理 183
11.3定义菜单命令标识常量 183
11.4 应用程序中包含和处理菜单 183
第十二章 ObjectWindows程序的窗口 191
12.1 初始化和创建窗口对象 191
12.2 窗口类注册 196
12.3 窗口的滚动 199
12.3.1窗口滚动条的设计 199
12.3.2 自动滚动和跟踪滚动 202
12.3.3 修改滚动单位和范围 202
12.3.4 修改滚动的位置 203
12.3.5 设置页的大小 203
13.1.1 构造和创建控制 205
13.1 使用控制对象 205
第十三章 控制对象 205
13.1.2 消掉和删除控制 206
13.1.3 控制与消息处理 206
13.2 列表框控制 208
13.2.1 构造和创建列表框对象 208
13.2.2 修改列表框 209
13.2.3 查询列表框 209
13.2.4 从列表框得到选择 210
13.3 滚动条 213
13.3.1 构造滚动对象 213
13.3.2 查询滚动条 213
13.3.4 对滚动条事件的响应 214
13.3.3 修改滚动条 214
13.4 按钮控制 217
13.5 确认框、无线电按钮和组框 220
13.5.1 构造确认框、无线电按钮和组框对象 220
13.5.2 查询选取框的状态 221
13.5.3 修改选取框的状态 221
13.5.4 对确认框和无线电按钮的消息响应 221
13.5.5 对组框消息的响应 221
13.6 编辑控制 224
13.6.1 构造编辑控制对象 224
13.6.2 剪贴板和编辑操作 224
13.6.3 查询编辑控制 226
13.6.4 修改编辑控制 227
13.7.1 构造静态控制对象 232
13.7 静态控制 232
13.7.2 查询静态控制 233
13.7.3 改变静态控制 233
13.8 组合框 234
13.8.1 三种组合框 235
13.8.2 组合框的构造 235
13.8.3 修改组合框 236
第十四章 对话框 240
14.1 什么是对话框 240
14.1.1 模式对话框 240
14.1.2 无模式对话框 240
14.2 ObjectWindows设计对话框的基本方法 241
14.2.1 ObjectWindows设计对话框的基本步骤 241
14.2.2 一个只显示信息的对话框例子 242
14.2.3 一个控制输入的对话框例子 245
14.3 TInputDialog类与正文输入对话框 250
14.4 TFileDialog类与文件对话框 254
第十五章 多文档界面(MDI) 260
15.1 什么是MDI 260
15.2 MDI的组成 260
15.3 MDI的ObjectWindows编程 261
15.3.1 框架窗口与TMDIFrame类 261
15.3.2 构造MDI子窗口(Windows菜单) 262
15.4 MDI应用程序中的消息处理 262
15.5 管理MDI子窗口 263
15.6 MDI举例 263
附录:ObjectWindows类 267
参考文献 291