《Visual C++ 6程序设计导学》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:马安鹏编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2002
  • ISBN:7302052719
  • 页数:437 页
图书介绍:本书是作者在总结多年从事培训经验的基础上编写而成的,按照适合初学者学习的思路分12章组材,内容涉及面向对象的概念、Windows编程基础、MFC应用程序框架、消息映射、控制栏编程、MFC和对话框编程、SDI和MDI设计、动态链接库、绘图和打印、数据库访问等。本书的特点是简洁的理论说明与大量的实例演示相结合,尽量避免枯燥空洞的理论罗列,易于上手。每章均附有练习题,并给出习题答案,便于读者复习掌握所学的内容。最后以一个综合实例的讲解,提高读者用所学知识解决实际问题的能力。本书既是非计算机专业学生学习Visual C++编程的自学教材,也可供各类软件培训班使用。

第1章 VC编程第一关:学习面向对象的概念 1

1.1 为什么要学习VC 1

1.2 什么是面向对象 1

1.3 面向对象的好处 2

1.4 类和对象关系 3

1.5 对象之间的关系 5

1.6 封装性 7

1.7 继承性 12

1.8 多态性 19

1.9 认识Visual C++集成开发环境 21

1.9.1 AppWizard工具 22

1.9.2 项目和项目工作区 22

1.9.4 Wizard Bar工具栏 26

1.9.3 Class Wizard工具 26

1.10 使用VC生成一个控制台应用程序 27

1.11 练习题 36

第2章 VC编程第二关:学习Windows编程基础知识 38

2.1 Windows程序的特点 38

2.2 Windows界面的基本要素 42

2.3 Win32程序结构 42

2.3.1 定义窗口类的结构 43

2.3.2 窗口类的注册与窗口创建 45

2.3.3 创建消息循环 47

2.3.4 窗口主函数WinMain 48

2.3.5 窗口函数WndProc和消息处理 50

2.3.6 资源定义文件 51

2.4 Win32程序开发流程 52

2.5 利用VC生成一个典型Win32窗口程序 55

2. 6 认识Visual C++集成开发环境:资源管理器和联机帮助 61

2.6.1 使用资源编辑器 61

2.6.2 充分利用联机帮助查阅函数信息 64

2.7 练习题 65

第3章 揭开MFC应用程序框架秘密 67

3.1 用AppWizard开发基于NDC的窗口程序 67

3.1.1 生成MFC窗口程序 67

3.1.2 使用项目工作区窗口浏览和添加代码 75

3.1.3 设置程序环境参数 77

3.1.4 VC集成开发工具与应用程序生成 79

3.2 MFC应用程序框架与Win32程序的关联 80

3.2.1 MFC应用程序框架对Win32程序主要逻辑的封装 80

3.2.2 MFC应用程序的启动流程 87

3.2.3 MFC应用程序启动顺序标记 94

3.3 MFC应用程序框架的基本类 98

3.3.1 基本类及其作用 99

3.3.2 基本类与SDI、MDI 100

3.4 MFC应用程序框架的基本类对象之间的相互访问 101

3.4.1 SDI应用程序基本类对象之间的相互访问关系 101

3.4.2 MDI应用程序基本类对象之间的相互访问关系 103

3.5 练习题 104

第4章 MFC应用程序的发动机:消息映射 106

4.1 消息类别及其描述 106

4.1.1 窗口消息 106

4.1.2 命令消息 107

4.1.3 控件消息 108

4.2.1 应用程序类的Run()函数 110

4.2 MDC消息映射原理 110

4.2.2 Send Message和Post Message函数 113

4.2.3 消息映射表 115

4.2.4 使用MFC应用程序框架寻找消息处理函数 123

4.3 MFC程序处理消息的路径 125

4.3.1 如何处理窗口消息 125

4.3.2 如何命令消息 126

4.3.3 如何处理控件消息 132

4.4 自定义消息处理 132

4.4.1 自定义静态窗口消息 132

4.4.2 自定义动态窗口消息 133

4.5 实例1:自定义类如何响应命令 134

4.6 实例2:自定义消息处理 139

4.7 实例3:使用菜单、工具栏和加速键 142

4.8 练习题 150

第5章 装饰应用程序的外观:控制栏编程 151

5.1 实例1:创建浮动工具栏 153

5.1.1 利用AppWizard自动创建工具栏 153

5.1.2 手工创建工具栏 156

5.1.3 工具栏命令处理及其界面更新编程 158

5.1.4 工具栏的隐藏/显示 160

5.2 创建自定义状态栏 161

5.2.1 利用AppWizard自动创建状态栏 161

5.2.2 自定义状态栏 163

5.3 实例2:创建DialogBar 169

5.4 实例3:创建ReBar栏 172

5.4.1 利用AppWizard生成伸缩栏 173

5.4.2 手动生成伸缩栏 174

5.5 练习题 179

第6章 MFC与对话框编程 180

6.1 对话框的基本原理 180

6.2 创建模式对话框 180

6.2.1 创建对话框资源模板 180

6.2.2对话框类的创建 184

6.2.3 为对话框类加入成员变量 184

6.2.4 对话框的初始化 187

6.2.5信息交换、验证 188

6.2.6对话框的运行 189

6.2.7 一点改进;定义命令范围处理函数 191

6.3.1 无模式对话框的特点 194

6.3无模式对话框 194

6.3.2 关于窗口对象的自动清除 197

6.4创建属性表对话框 199

6.4.1 属性表对话框的创建 199

6. 4. 2 属性表对话框的运行机制 201

6.4.3 属性表对话框的具体实例 202

6.5 创建向导 209

6.5.1 创建向导的属性页 209

6.5.2 创建向导属性表 210

6.5.3 显示向导 211

6.5.4 设置向导的按钮 211

6.5.5 响应向导的按钮 212

6.5.6 运行向导 213

6.6 练习题 214

7.1MFC绘图需要哪些要素 215

第7章 绘图与打印 215

7.1.1 画布--设备场境类(CDC) 216

7.1.2 绘图工具--图形对象类(CGdiObject) 217

7.2 获取设备场境对象 218

7.3 创建绘图工具--定义图形对象 219

7.3.1 创建CPen对象 219

7.3.2 创建CBrush对象 220

7.3.3 创建CFont对象 221

7.4 设置绘图属性 222

7.4.1 设置绘图坐标系 222

7.4.2其他绘图属性 226

7.5.1 输出文本 227

7.5 绘图操作 227

7. 4. 3 默认绘图属性 227

7.5.2 绘图操作 228

7. 6 绘图步骤 230

7.7 实例:创建一个画图程序 230

7.8 练习题 243

第8章 文档类对象持续性 244

8.1 CObject类的三大性质 244

8.1.1 CObject类的三个性质 244

8.1.2 MFC应用程序中的三对宏 247

8.2 文档类持续性原理 253

8.2.1 Serialize函数原理 255

8.2.2 何时调用Serialize函数 256

8.2.3 Serialize函数支持哪些数据类型持续化 257

8.2.4 文档类的其他虚成员函数 258

8.3 文档类持续性的局限性 259

8.3.1 Serilize (Carchive & ar)函数不能适应的情况 259

8.3. 2 问题的解决办法 259

8.4 文档-视图结构及其意义 260

8.5 文档和视图的相互作用 262

8. 6 实例1:简单的文本编辑器Editor 263

8.7 实例2:具有滚动视图的Editor编辑器 276

8.8 练习题 280

第9章 文档视图结构的高级形式:SDI与MDI 281

9.1 文档视图结构组合的多种形式 281

9.1.1 SDI与MDI程序的区别 281

9.1.2 文档视图的多种组合形式 282

9.2 实例1:动态切分窗口的SDI应用程序 283

9.3 实例2;动态切分窗口的MDI应用程序 288

9.4 实例3:静态切分窗口的多视图SDI应用程序 292

9.5 实例4:静态切分窗口的多视图MDI应用程序 300

9.6 实例5:无切分窗口的多视图SDI应用程序 309

9.7 实例6:无切分窗口的多视图MDI应用程序 317

9.8 如何选用MDC集合类 323

9.8.1集合的形式 323

9.8.2MFC提供了哪些集合类 323

9.8.3 如何选择MFC的集合类 325

9.8.4 如何使用MFC的模板集合类 325

9.9 练习题 330

第10章 动态链接库 331

10.1 动态链接库介绍 331

10.1.1 动态链接库和静态库 331

10.1.3 动态链接库与静态连接库的加载原理 332

10.1.2 动态链接库与进程的关系 332

10.1.4 实例1:静态库的制作和使用 334

10.1.5 实例2:Win32动态链接库的创建和使用 337

10.1.6 显式连接与隐式连接 342

10.2 MFC动态链接库 344

10.2.1 MFC常规动态链接库与MFC扩展动态链接库 345

10.2.2 实例3:常规DLL导出函数 346

10.2.3 实例4:扩展DLL导出C++类、资源 349

10.3 练习题 354

第11章 访问数据库 355

11.1 数据库基本概念 355

11.1.1 数据库、数据库管理系统(DBMS)和结构化查询语言(SQL) 355

11.1.2 ODBC基本概念 356

11.2 MFCODBC访问数据库 357

11.2.1 CDatabase类 358

11.2.2 CRecordset类 359

11.2.3 记录集的数据来源 361

11.2.4 记录集的建立和关闭 362

11.2.5 滚动记录 364

11.2.6 修改、添加和删除记录 365

11.3 CRecordView类 366

11.4 MFCDAO访问数据库 369

11.4.1 什么是DAO 369

11. 4. 2 DAO和ODBC的相似之处 370

11.4.3 DAO的特色 370

11.4.4 使用ODBC还是DAO 371

11.5 自动注册DSN和创建表 372

11.5.1 自动注册DSN 372

11.5.2 用ODBCAH创建表 373

11.5.3 用DAO创建表 374

11.6 实例 374

11.6.1 注册数据源 374

11.6.2 实例1:检索数据库 376

11.6.3 实例2:连接数据库 380

11.6.4 实例3:更新数据库 385

11.7 练习题 390

第12章 综台应用--编写绘图程序 391

12.1 确定软件的目标功能 391

12.2 定义应用程序的数据结构 392

12.2.1 基类CShape的设计 392

12.2.2 CLine类的设计 395

12.2.3 CRectangle类的设计 398

12.2.4 CCircle类的设计 401

12.2.5 文档数据结构设计 403

12.3 开发程序 404

12.3.1 生成新项目:Cord 404

12.3.2 往项目添加CShape及其3个派生类 404

12.3.3 修改文档类CCordDoc 404

12.3.4 修改程序资源 407

12.3.5 修改视图类 408

12.3.6 编译运行 416

12.4 Cord程序清单 416

12.4.1 文档类CCordDoc 416

12.4.2 视图类CCordView 420

12.5 本实例尚待改进的地方 431

附录 练习题答案 432

参考文献 438