前言 1
第1章 文档和显示窗口 1
1.1 保存应用程序的状态和位置 2
1.2 控制CFormViews和CScrollViews的大小 6
1.3 将一个文档和多个文件扩展名联系起来 12
1.4 拖拉鼠标时显示窗口的自行滚动 16
1.5 同时打开多个文档 23
1.6 用不同的显示窗口显示同一份文档 29
1.7 锁定一个包含不同显示窗口的分离条窗口 38
第2章 状态条和工具条 49
2.1 当显示菜单帮助信息时使第一个状态格极大 50
2.2 在状态条中置入当前时间 53
2.3 改变状态条字体和风格 65
2.4 在显示窗口中增加一个状态条 68
2.5 在状态条中显示一个进展尺度 72
2.6 使用图像列表在状态条中放入位图 77
2.7 在状态条内放入行和列指示器 83
2.8 定制一个显示在对话框中的工具条 87
2.9 创建一个定制的CControlBar以显示静态文本 96
第3章 控件 105
3.1 光标通过控件时改变光标类型 106
3.2 将数据和列表框中的列表项联系起来 111
3.3 限制编辑控件使之只支持浮点数 119
3.4 设置列表框中列表项的颜色 119
3.5 创建一个动态捷径菜单 124
3.6 创建一个进展尺度定制控件 129
3.7 创建一个自动调整大小的多列列表框 137
3.8 编写一个显示菜单的定制按钮 150
3.9 在一个列表框中绘制位图 157
第4章 多媒体 169
4.1 用通用文件对话框预览一个AVI文件 170
4.2 用DrawDib函数显示位图 173
4.3 在CView中播放AVI文件 182
4.4 播放大型WAV文件 187
4.5 播放音频CD磁道 198
4.6 用OpenGL和MFC创建三维动画 222
第5章 位图和图标 233
5.1 在MDI应用程序的背景中绘制一个位图 233
5.2 应用程序的动画式图标 239
5.3 在位图上绘制文本 244
5.4 绘制透明性的位图 249
5.5 用鼠标平滑地拖动位图 257
6.1 在状态条上显示对话控件的帮助信息 277
第6章 对话框 277
6.2 利用FileOpen通用对话框打开多个文件 281
6.3 定制通用文件对话框 288
6.4 扩展和缩减一个对话框 293
6.5 显示一个模式或无模式对话框 297
6.6 编写定制的DDX/DDV例程 304
第7章 OLE和DDE 312
7.1 创建一个简单的OLE对象和自动服务器 313
7.2 使用OLE的拖放特征 323
7.3 使用结构化存储 332
7.4 创建DDE对象与其他程序通信 349
7.5 编写一个OLE施转(spin)控件 356
7.6 创建一个颜色单元(color cell)OLE控件 378
第8章 系统 386
8.1 防止运行一个应用程序的多个实例 387
8.2 用资源DLL定位MFC应用程序 392
8.3 使用Win32注册簿 400
8.4 MFC中的多重继承 408
8.5 在Win32下检测载入的应用程序何时终止 414
8.6 在Win32下使用系统挂钩 426
8.7 在32位MFC应用程序之间共享数据 439
第9章 WINDOWS95外壳 449
9.1 编写播放CD的tray应用程序 450
9.2 创建文件或文件夹的属性页处理程序 474
9.3 创建显示系统调色板的桌面工具条(appbar) 506
9.4 扩展确定文件的上下文菜单 527
附 录 问题、解答及提示 538