第1章 Windows操作系统概述 1
1.1 发展历程 2
1.2 功能特点 3
第2章 开发应用程序预备知识 5
2.1 窗口 5
2.1.1 性质 5
2.1.2 外观 5
2.1.3 管理 6
2.2 事件驱动 6
2.3.1 组成 7
2.3 消息 7
2.3.2 产生和分类 8
2.3.3 应用程序常用消息 8
2.3.4 消息队列 10
2.4 对象与句柄 10
2.5 匈牙利表示法 11
第3章 应用程序基本结构与开发步骤 12
3.1 应用程序组成 12
3.2 源程序组成结构 12
3.2.2 数据类型和数据结构 13
3.2.1 WinMain函数和窗口函数 13
3.3 WinMain函数 15
3.3.1 函数说明 15
3.2.3 Windows API函数 15
3.3.2 初始化 16
3.3.3 消息循环 18
3.4 窗口函数 19
3.5 应用程序示例 20
3.6 开发步骤 23
4.1.1 刷新请求 24
4.1.2 系统响应 24
第4章 图形设备接口与Windows绘图 24
4.1 图形刷新 24
4.1.3 无效区域与无效矩形 25
4.1.4 刷新方法 25
4.2 图形设备接口 25
4.2.1 设备无关性 25
4.2.2 设备环境和设备描述表 26
4.2.3 获取设备环境方法 27
4.3.1 概念 29
4.3 映射模式 29
4.3.2 设置 30
4.3.3 窗口与视口 30
4.3.4 定义窗口与视口 31
4.4 绘图工具与颜色 32
4.4.1 画笔 32
4.4.2 画刷 33
4.4.3 颜色 35
4.5 常用绘图函数 35
4.6.1 使用基本绘图工具与函数 39
4.6 绘图示例 39
4.6.2 设置与使用映射模式 42
4.7 位图 45
4.7.1 概念 45
4.7.2 内存设备环境 45
4.7.3 操作过程 46
4.7.4 应用程序组织方法 48
4.7.5 位图示例 49
5.1 设置文本设备环境 52
5.1.1 选用系统字体 52
第5章 文本输出 52
5.1.2 创建自定义字体 53
5.1.3 设置字体和背景颜色 53
5.2 文本输出过程 54
5.2.1 获取字体信息 54
5.2.2 格式化文本 55
5.2.3 调用函数输出文本 56
5.3 文本输出示例 56
5.3.1 程序名称 56
5.3.3 程序清单 57
5.3.2 示例目的 57
5.3.4 运行结果 59
第6章 Windows资源 60
6.1 光标、图标和位图资源 60
6.1.1 光标资源 60
6.1.2 图标资源 61
6.1.3 位图资源 62
6.2 菜单与加速键资源 62
6.2.1 菜单外观及组成部分 62
6.2.2 创建菜单过程 63
6.2.3 操作菜单项 66
6.2.4 动态创建菜单 69
6.2.5 加速键资源 70
6.2.6 菜单示例 72
6.3 对话框资源 77
6.3.1 功能 77
6.3.2 特点 78
6.3.3 控件 79
6.3.4 分类 79
6.3.5 模态对话框编程方法 79
6.3.6 模态对话框示例 83
6.3.7 非模态对话框编程方法 88
6.3.8 非模态对话框示例 90
6.3.9 通用对话框 94
6.3.10 通用对话框示例 96
第7章 Windows标准控件 102
7.1 概述 102
7.1.1 分类 102
7.1.2 创建 102
7.1.3 控件与应用程序之间的消息传递 104
7.1.4 常用子窗口操作函数 105
7.2.1 按钮控件的类型及功能特点 107
7.2 按钮控件 107
7.1.5 输入焦点 107
7.2.2 创建按钮控件 109
7.2.3 按钮控件与应用程序的消息传递 110
7.2.4 按钮控件示例 111
7.3 滚动条控件 116
7.3.1 功能特点与分类 116
7.3.2 创建滚动条 116
7.3.3 滚动条与应用程序间的消息传递 117
7.3.4 常用滚动条操作函数 118
7.3.5 滚动条消息处理模板 119
7.3.6 滚动条控件示例 120
7.4 静态控件 124
7.4.1 功能与特点 124
7.4.2 创建 124
7.4.3 发送静态控件消息 125
7.4.4 静态控件示例 125
7.5 列表框 128
7.5.1 功能与特点 129
7.5.2 创建 129
7.5.3 列表框和应用程序之间消息传递 130
7.5.4 列表框示例 132
7.6 编辑框 135
7.6.1 功能特点 135
7.6.2 创建 136
7.6.3 编辑框与应用程序间的消息传递 136
7.6.4 编辑框示例 137
7.7 组合框 143
7.7.1 功能与特点 143
7.7.2 创建 144
7.7.3 组合框与应用程序间消息传递 145
7.7.4 组合框示例 146
第8章 通用控件 149
8.1 概述 149
8.1.1 分类及其功能 149
8.1.2 创建 150
8.1.3 通用控件与应用程序间消息传递 150
8.2 窗口控制类通用控件 152
8.2.1 工具栏 152
8.2.2 工具栏提示 154
8.2.3 状态栏 156
8.2.4 窗口类通用控件示例 157
8.3 资源管理类通用控件 164
8.3.1 树形视图 165
8.3.2 列表视图 170
8.4 滚动类通用控件 175
8.4.1 跟踪条控件 176
8.4.2 微调按钮控件 178
8.4.3 滚动类通用控件示例 180
第9章 文件操作 184
9.1 特点 184
9.2 常用文件操作函数 184
9.2.1 CreateFile函数 185
9.2.2 ReadFile函数 187
9.2.3 WriteFile函数 188
9.2.4 GetFileInformationByHandle函数 189
9.2.5 SearchPath函数 190
9.2.6 SetFilePionter函数 191
9.3 文件操作示例 192
第10章 操作剪贴板 204
10.1 剪贴板数据格式 204
10.2 操作文本剪贴板 204
10.2.1 向剪贴板发送文本 204
10.2.2 获取剪贴板文本 207
10.3 操作位图剪贴板 208
10.4 剪贴板示例 209
第11章 多线程编程 221
11.1 进程与线程概念 221
11.2 进程与线程管理 221
11.3 定时器与定时器消息 222
11.3.1 功能与特点 222
11.3.2 使用方法 222
11.4 多线程编程方法 223
11.4.1 基本操作 223
11.3.3 定时器消息 223
11.4.2 线程之间通信 225
11.4.3 多线程编程示例 226
11.5 线程同步概念 234
11.5.1 问题提出 234
11.5.2 临界区法 234
第12章 多文档界面 237
12.1 特点 237
12.2 组成及层次关系 238
12.3 创建 238
12.4.1 多文档消息 240
12.4 消息及其处理 240
12.4.2 处理消息 243
12.5 保存子窗口数据 244
12.6 多文档界面示例 244
第13章 动态链接库 253
13.1 概述 253
13.1.1 与静态链接库的区别 253
13.1.2 运行机制 253
13.1.3 典型应用 254
13.2 文件组成结构 254
13.3 加载方式 256
13.4 使用动态链接库实现数据共享 257
第14章 Internet编程 260
14.1 Internet网络基础 260
14.1.1 Internet协议 260
14.1.2 Internet地址 261
14.1.3 Internet域名系统 261
14.1.4 协议端口 261
14.2 网络编程接口Winsock API 262
14.3.1 建立Socket 263
14.3 Socket编程模型 263
14.3.2 配置Socket 264
14.3.3 网络I/O 265
14.3.4 关闭Socket 266
14.4 编程示例 266
第15章 数据库编程 269
15.1 ODBC功能及其组成结构 269
15.2 结构化查询语言SQL 270
15.2.1 关系数据库模式结构 270
15.2.2 SQL语法简介 271
15.3 使用ODBC SDK开发数据库 274
15.3.1 开发步骤 274
15.3.2 ODBC应用程序示例 276
附录 常用Windows API函数 278
1.窗口操作类 278
CloseWindow函数 278
CreateWindow函数 278
GetWindowLong函数 279
GetClientRect函数 279
GetParent函数 279
DestroyWindow函数 279
EnableWindow函数 279
GetWindowText函数 280
GetWindowTextLength函数 280
InvalidateRect函数 280
MoveWindow函数 280
SetMenu函数 281
SetWindowLong函数 281
SetFocus函数 281
RegisterClass函数 281
SetWindowText函数 282
ShowWindow函数 282
UpdateWindow函数 282
2.图形用户接口(GDI)类 282
Arc函数 282
BeginPaint函数 283
BitBlt函数 283
CreateCompatibleBitMap函数 283
CreateCompatibleDC函数 283
GetBkColor函数 284
EndPaint函数 284
Ellipse函数 284
DeleteDC函数 284
GetDC函数 285
GetMapMode函数 285
GetObject函数 285
GetTetColor函数 285
GetTextExtentPoint32函数 285
Pie函数 286
MoveToEx函数 286
LineToEx函数 286
GetTextMetrics函数 286
Polygon函数 287
Polyline函数 287
Rectangle函数 287
ReleaseDC函数 288
RoundRect函数 288
SetBkColor函数 288
SetMapMode函数 288
CreateDialog函数 289
AppendMenu函数 289
TextOut函数 289
SetTextColor函数 289
3.资源和控件类 289
CheckMenultem函数 290
CreateMenu函数 290
DialogBox函数 290
EnableMenultem函数 290
GetDlgltemlnt函数 291
GetDlgltemText函数 291
GetDlgltem函数 291
EndDialog函数 291
GetMenu函数 292
GetScrollPos函数 292
GetScrollRange函数 292
GetStockObject函数 292
InsertMenu函数 293
LoadAccelerators函数 293
LoadBitmap函数 293
LoadCursor函数 293
SelectObject函数 294
ModifyMenu函数 294
LoadIcon函数 294
LoadMenu函数 294
SetDlgltemInt函数 295
SetDlgltemText函数 295
SetScrollPos函数 295
CreateFile函数 296
GetFileInformationByHandle函数 296
4.文件操作类 296
SetScrollRange函数 296
ReadFile函数 297
SearchPath函数 297
SetFilePionter函数 297
WriteFile函数 298
5.剪切板类 298
CloseClipboard函数 298
EmptyClipboard函数 298
GetClipboardData函数 298
DispatchMessage函数 299
6.消息处理类 299
GetMessage函数 299
OpenClipboard函数 299
SetClipbaordData函数 299
IsDialogMessage函数 300
PeekMessage函数 300
PostQuitMessage函数 300
PostThreadMessage函数 300
SendDlgltemMessage函数 301
SendMessage函数 301
TranslateAccelerator函数 301
SetTimer函数 302
CreateThread函数 302
8.线程操作类 302
KillTimer函数 302
7.定时器类 302
TranslateMessage函数 302
ExitThread函数 303
ResumeThread函数 303
SuspendThread函数 303
TerminateThread函数 303
9.其他 304
CloseHandle函数 304
MessageBeep函数 304
MessageBox函数 304