序
前言
第1章 Visual C++6.0集成开发环境
1.1 Visual C++6.0工程及其文件构成
1.1.1Visual C++中的文件
1.1.2工作空间中的文件
1.1.3可以创建的文件类型和工程类型
1.2启动Visual C++6.0
1.2.1Visual C++6.0的启动界面.
1.2.2 Visual C++6.0的功能菜单.
1.3 Visual C++6.0集成开发环境概述
1.3.1项目工作区
1.3.2应用程序向导Appwizard
1.3.3向导ClassWizard.
1.3.4向导工具栏WizardBar.
1.4小结
1.5练习题
第2章 程序开发基础.
2.1 C++语法基础
2.1.1 C++程序的构成
2.1.2 c++的语言基础
2.1.3 C++中的类与对象
2.1.4类的继承和多态性
2.1.5 C++中的输入/输出流
2.2 AppWizard的使用
2.2.1 AppWizard第一步
2.2.2 AppWizard第二步
2.2.3 AppWizard第三步
2.2.4 AppWizard第四步
2.2.5 AppWizard第五步
2.2.6 AppWizard第六步
2.3一个简单的应用程序
2.3.1创建过程.
2.3.2编译、链接并运行程序.
2.4程序结构剖析
2.4.1 CAboutDlg类
2.4.2 CEg2_lApp类.
2.4.3 CEg2_IDoc和CEg2_lView类.
2.4.4 CMainFrame类
2.5 Win32编程基础.
2.5.1Win32数据类型.
2.5.2句柄.
2.5.3标识符命名.
2.6小结
2.7练习题
第3章 构造应用程序框架
3.1单文档应用框架
3.1.1创建过程.
3.1.2 CEg3_lApp应用程序运行过程
3.1.3 Initlnstance()函数
3.2多文档应用框架
3.2.1创建过程.
3.2.2单文档应用程序和多文档应用程序的比较.
3.3基于对话框的应用框架
3.3.1创建过程.
3.3.2 InitInstance()函数分析
3.4程序运行流程分析
3.4.1 Windows的编程模式.
3.4.2 MFC应用程序的运行过程
3.4.3三种应用程序框架的异同.
3.5小结
3.6练习题
第4章 Microsoft类库基础
4.1 Microsoft类库概述
4.2根类:CObiect
4.3 MFC应用程序框架结构类
4.3.1CWinApp类
4.3.2 CDocument类
4.3.3 CView类
4.4 MFC窗口类
4.5 MFC异常类
4.5.1 CMemoryException:(Out-of-memory exception,内存不足异常)
4.5.2 CNotSupportedException:(Request for an unsupported operation.系统不支持的操作).
4.5.3 CArchiveException:(Archive-specific exception文件归档异常)
4.5.4 CFileException.(File-specific exception,文件操作异常)一
4.5.5 CResourceException:(Windows resource not found or not creatable.资源未找到).
4.6 MFC文件类
4.6.1打开和关闭文件
L'4.6.2文件的读写
4.6.3 CStdioFile类
4.6.4 CMemFile类
4.6.5 CArchive类.
4.6.6 CSocketFile类
4.7绘图和打印类
4.7.1设备环境类.
4.7.2图形对象类
4.8 ODBC类.
4.8.1 CDatabase类
4.8.2 CRecordset类
4.8.3 CRecordView类
4.9小结.
4.10练习题.
第5章 菜单、工具栏与状态栏
5.1编辑菜单资源.
5.1.1系统生成的菜单
5.1.2菜单的编辑
5.2使用ClassWizard添加消息处理函数
5.2.1为应用程序添加消息处理函数
5.2.2 MessageBox()函数
5.3加入键盘加速键.
5.3.1键盘加速键的含义
5.3.2添加键盘加速键
5.4工具栏和状态栏.
5.4.1工具栏
5.4.2用MFC创建工具栏
5.4.3创建一个实际的工具栏.
5.4.4状态栏.
5.5小结
5.6练习题
第6章 对话框
6.1消息映射
6.2定义对话框
6.3通用对话框
6.3.1通用对话框.
6.3.2应用实例.
6.4消息对话框
6.5属性对话框
6.6鼠标和键盘消息
6.6.1鼠标消息.
6.6.2键盘消息.
6.7小结
6.8练习题
第7章 控件与功能函数.
7.1控件概述
7.1.1控件的手工编辑
7.1.2控件的操作和使用
7.1.3用于常用控件的通知
7.2静态控件
7.3按钮控件
7.3.1按钮控件的样式
7.3.2类CButton.
7.3.3按钮控件消息
7.4编辑框控件
7.4.1按钮控件的样式
7.4.2 CEdit类所有成员函数
7.4.3编辑框控件消息
7.5列表框控件
7.5.1列表框控件样式
7.5.2类CListBox常用成员函数
7.5.3列表框控件消息
7.6组合框控件
7.6.1组合框控件样式
7.6.2类CComboBox常用成员函数
7.6.3组合框控件消息
7.7滚动条控件.
7.7.1滚动条控件样式
7.7.2类CScrollBar
7.7.3滚动条控件消息
7.8常用控件应用实例.
7.8.1创建对话框资源
7.8.2生成对话框类
7.8.3为控件建立相关联的成员变量
.7.8.4成员变量的初始化
7.8.5建立消息映射与响应函数
7.8.6函数建立与调用
7.8.7重载其他函数
7.8.8运行程序
7.9小结.
7.10练习题
第8章 高级控件
8.1高级控件简介.
8.2动画控件.
8.2.1动画控件的样式
8.2.2 CAnimateCtrl类.
8.3标签控件
8.3.1标签控件的样式
8.3.2类CTabCtrl
8.3.3标签控制的操作方法
8.3.4应用实例.
8.4列表控件
8.4.1列表控件的样式.
8.4.2 CListCtrl类.
8.4.3应用实例.
8.5树形控件
8.5.1树形控件的样式
8.5.2 CTreeCtrl类.
8.5.3应用实例
8.6旋转按钮控件
8.6.1旋转按扭控件的样式.
8.6.2 CSpinButtonCtrll类
8.7滑动条控件
8.7.1滑动条控件的样式.
8.7.2 CSliderCtrl类
8.8进度条控件
8.8.1进度条控件的样式.
8.8.2 CProgressCtrl类
8.9小结
8.10练习题
第9章 绘图与打印
9.1设备环境类
9.1.1设备环境类CDC.
9.1.2其他设备环境类
9.2 GDI对象.
9.3坐标与坐标模式
9.3.1固定映射模式
9.3.2可变映射模式
9.3.3坐标转换
9.4常用绘图函数.
9.4.1常用位置类
9.4.2简单图形函数
9.5绘图实例,
9.6字体.
9.7画刷.
9.8打印和打印预览.
9.8.1打印控制流程
9.8.2打印循环
9.8.3打印预览
9.9小结
9.10练习题
第10章访问数据库和文件读写
10.1 MFC提供的数据库访问类
10.1.1CDatabase类
10.1.2 CRecordset类
10.1.3 CRecordView类.
10.1.4 CDBException类
10.1.5 CFieldExchange类
10.2建立、连接数据源
10.2.1启动ODBC驱动程序
10.2.2建立数据源
10.3建立访问数据库的应用程序
10.3.1建立并连接数据库
10.3.2创建访问数据库的应用程序
10.4实现数据访问
10.4.1设计主窗体
10.4.2添加变量
10.4.3运行应用程序
10.5增加和删除记录
10.5.1增加新记录
10.5.2删除记录
10.5.3编辑记录
10.5.4添加处理记录的功能
10.6程序分析
10.6.1三个主要函数的代码分析
10.6.2程序运行机制分析
10.7文件的读写
10.7.1 int fopen(string filename,string mode)函数
10.7.2 int fseek(int f1),hat offset,【,int whence】)函数.
10.7.3 int rewind(int fi))函数
10.7.4 fread函数和fwrite函数
10.7.5序列化
10.7.6 CFile类
10.8小结.
10.9练习题
第11章 MFC的进程和线程
11.1 Win32的进程和线程概念
11.1.1进程的概念
11.1.2线程的概念
11.2进程编程
11.2.1进程的创建
11.2.2进程的管理和终止
11.2.3取得和设置进程的优先级
11.2.4进程的终止
11.2.5判断一个进程是否终止
11.3 Win32中关于多线程的几个函数
11.3.1线程的创建
11.3.2 CreatRemoteThread函数.
11.3.3 SuspendThread和ResumeThread函数
11.3.4 ExitThread和TerminateThread函数.
11.3.5取得一个线程的优先级的函数
11.4 MFC中多线程的实现
11.4.1与多线程编程相关的全局函数
11.4.2 CWinThread类.
11.4.3 I作者线程的创建
11.4.4创建用户界面线程
11.5线程之间的通信.
11.6线程的调度和同步.
11.6.1 I临界段对象.
11.6.2斥对象.
11.6.3事件对象.
11.6.4信号量对象.
11.6.5各种同步方法的比较.
11.7应用实例
11.7.1用户界面的设计.
11.7.2新增成员变量及初始化.
11.7.3创建菜单响应函数.
11.7.4创建游戏者线程.
11.7.5创建机器线程.
11.7.6修改系统界面.
11.7.7运行程序.
11.8小结.
11.9练习题
第12章 串口通信程序的开发
12.1串口通信的内部机制
12.1.1 Windows串行通信的工作原理.
12.1.2串行通信的操作方式.
12.1.3单线程与多线程下的串口通信.
12.2串口通信的实现
12.2.1串口的初始化.
12.2.2串口的配置
12.2.3超时设置一
12.2.4串口的写操作
12.2.5串口的读操作
12.2.6关闭串口
12.3串口通信程序举例.
12.3.1建立基于对话框的程序
12.3.2添加控件
12.3,3建立按钮的消息响应函数。
12.3.4重载对话框类的初始化函数OnlnitDialog0函数
12.3.5程序运行结果
12.4小结
12.5练习题
第13章 动态链接库
13.1 DLL基础知识
13.1.1 DLL概述.
13.1-2 DLL与LIB的区别.
13.1.3 DLL与EXE的区别
13.1.4 DLL的两种动态链接方法
13.2 DLL入/出口函数
13.2.1 DllMain函数.
13.2.2 MFCAppWizard生成的RegularDLL入/出口
13.3从DLL中导出函数
13.3.1使用DEF文件导出函数.
13.3.2使用关键字declspee(dllexport)
13.3.3使用AFX EXT CLASS导出
13.4 DLL中的数据和内存.
13.4.1 DLL多进程间的数据共享
13.4.2 DLL进程中多线程间的数据隔离
13.5几种常用的DLL
13.5.1Win32 DLL
13.5.2 Regular staticallv linked to MFC DLL
13.5.3 Regular using the shared MFC DLL
13.5.4 MFC Extension DLL
13.6 DLL的调用和调试.
13.6.1 VC对DLL的调用
13.6.2 VB对DLL的调用
13,6.3 DLL的调试
13.7.1使用已有的DLL
13.7.2资源DLL
13.7.3使用自己的DLL
13.8小结
13.9练习题
参考文献