1、Visual C+ 程序设计课程教学大纲课程编号:课程英文名称: Program Design of Visual C+总学时: 80 授课学时: 48 实验学时: 32 学分: 4 开课学期:先修课程:高级语言程序设计、面向对象程序设计适用专业:计算机及相关专业一、课程简介本课程是计算机及应用专业的一门主要专业课。它是为满足计算机应用领域对计算机应用人才的需要而设置的,是以培养学生的应用能力为主要目标。通过本课程的学习,使学生为以后学习软件工程等后续课打下必备的基础,并且为以后从事应用软件开发提供合适的工具。学生应达到如下要求:1应对基于MFC的Windows应用程序所需的基本编程的思路、W
2、indows应用程序框架的创建与消息处理、文档与视图有较好的理解;2能加深理解和掌握菜单、工具栏与状态栏、图形操作与文本处理、对话框的编程;3能结合实际需求开发出具有一定难度的windows应用程序。二、教学内容第1章 Visual C+开发环境1.1 集成开发环境窗口1.2 AppWizard与ClassWizard1.2.1 应用程序向导AppWizard1.2.2 类向导ClassWizard1.3 项目与项目工作区 1.3.1 项目1.3.2 项目工作区1.4 集成开发环境的菜单栏1.4.1 File菜单1.4.2 Edit菜单1.4.3 View菜单1.4.4 Insert菜单1.4
3、.5 Project菜单1.4.6 Build菜单1.4.7 Tools菜单1.4.8 Window菜单1.4.9 Help菜单1.5 集成开发环境的工具栏1.5.1 Standard工具栏1.5.2 Build MiniBar工具栏1.5.3 WizardBar工具栏1.6 资源与资源编辑器1.6.1 资源和资源符号1.6.2 资源编辑器习 题第2章 MFC应用程序概述2.1 Windows应用程序概述2.1.1 窗口2.1.2 消息和事件2.1.3 基本数据类型2.1.4 句柄2.2 MFC应用程序框架2.2.1 创建MFC应用程序框架2.2.2 MFC应用程序框架结构类2.2.3 MFC
4、应用程序的分析2.2.4 文档/视图结构2.3 消息映射与消息处理2.3.1 消息的类别及其描述2.3.2 MFC消息映射机制2.3.3 自定义消息处理2.4 程 序 调 试2.4.1 查找源程序中的语法错误 2.4.2 调试器2.4.3 跟踪调试程序2.4.4 MFC调试宏2.4.5 Dump()调试函数2.5 应用实例2.5.1 实例简介2.5.2 创建过程习 题第3章 图形与文本3.1 图形设备接口和设备环境3.1.1 图形设备接口3.1.2 设备环境3.1.3 设备环境类 3.1.4 颜色的设置3.1.5 获取设备环境3.1.6 编程实例3.2 GDI对象类CGdiObject3.3
5、画笔和画刷的使用3.3.1 使用库存(stock)对象3.3.2 创建和使用自定义画笔3.3.3 创建和使用自定义画刷3.4 处 理 文 本3.4.1 设置文本显示属性3.4.2 设置字体3.4.3 格式化文本3.4.4 常用文本输出函数3.5 位 图3.5.1 设备相关图(DDB)和设备无关图(DIB)3.5.2 位图操作函数3.5.3 位图的显示3.6 应用实例3.6.1 实例简介3.6.2 创建过程习 题第4章 菜单、工具栏和状态栏4.1 菜单4.1.1 菜单的类型4.1.2 编辑菜单4.1.3 建立消息映射4.1.4 菜单的有效控制4.1.5 快捷菜单4.1.6 动态菜单4.1.7 基
6、于对话框的菜单4.2 工具栏4.2.1 编辑工具栏4.2.2 建立消息映射4.2.3 自定义工具栏的操作4.3 状态栏4.3.1 状态栏类的继承关系4.3.2 状态栏类的成员函数4.3.3 状态栏操作4.4 应用实例 4.4.1 实例简介4.4.2 创建过程习 题第5章 对话框 5.1 对话框概述5.1.1 对话框的类型5.1.2 对话框的CDialog类5.1.3 对话框的组成5.2模态对话框5.2.1 设计对话框模板资源5.2.2 设计对话框类5.2.3 运行对话框5.2.4 对话框数据交换和校验机制5.3 非模态对话框5.3.1 非模态对话框的特点5.3.2窗口对象的自动清除5.4属性页
7、对话框5.5通用对话框5.5.1 CFileDialog类5.5.2 CColorDialog类5.5.3 CFontDialog类5.5.4 CPrintDialog类和CPageSetupDialog类5.5.5 CFindReplaceDialog类5.6 应用实例5.6.1 实例简介5.6.2 创建过程习 题第6章 Windows常用控件 6.1 控件概述6.1.1 控件的创建6.1.2 控件的组织6.1.3 控件的共有属性6.1.4 控件的访问6.2 CStatic类控件6.2.1 静态文本(StaticText)控件6.2.2图片(Picture)控件6.3 CEdit类控件6.3
8、.1编辑框的风格6.3.2编辑框的基本操作6.3.3编辑框的通知消息6.4 CButton类控件6.4.1 概述6.4.2按钮控件的基本操作6.4.3按钮控件的通知消息6.4.4位图按钮(CBitmapButton)6.5 CListBox类控件6.5.1 列表框的风格6.5.2列表框的基本操作6.5.3 列表框的通知消息6.6 CComboBox类控件6.6.1组合框的属性6.6.2组合框的基本操作6.6.3组合框的通知消息6.7 CSpinButtonCtrl类控件6.7.1旋转拨钮控件常用的风格 6.7.2旋转按钮控件的基本操作6.7.3旋转按钮控件的通知消息6.8 CSliderCtr
9、l类控件6.8.1滑动条的风格6.8.2滑动条的基本操作6.8.3滑动的通知消息6.9 CProgressCtrl类控件6.9.1进度条的创建6.9.2进度条的风格6.9.3进度条的基本操作6.10 应用实例6.10.1 实例简介6.10.2 创建过程习 题第7章 文档与视图7.1 文档/视图结构7.1.1 概述7.1.2文档与视图之间的相互作用7.1.3使用文档视图结构的意义7.2简单的文档/视图结构应用程序7.2.1文档中数据的初始化7.2.2文档中数据的清理7.2.3简单的文档/视图结构应用程序7.2.4 集合类的使用7.3 文档的读写7.3.1 MFC文档读写机制7.3.2 MFC文档
10、序列化7.3.3 自定义可序列化的类7.4 分割视图窗口7.4.1 CSplitterWnd类7.4.2 分割视图窗口的实现技术7.5 多文档的应用程序7.5.1多文档应用程序的界面7.5.2 多视图的应用程序7.5.3 多类型的应用程序7.6 应用实例7.6.1 实例简介7.6.2 创建过程习 题第8章 打印编程8.1 基本打印功能 8.1.1 打印原理 8.1.2 CPrintInfo类8.1.3 打印过程 8.1.4 打印预览 8.2 设置打印坐标系8.2.1 Windows映射模式8.2.2映射模式的设置8.3 多页打印8.3.1 默认打印存在的不足8.3.2 实现多页打印功能8.4
11、高级打印8.4.1 页眉和页脚8.4.2设置页边距习 题第9章 动态链接库编程9.1 概述9.1.1动态链接库的概念9.1.2 动态链接库和静态链接库的区别9.1.3 使用动态链接库的优点 9.1.4 DLL文件的存放位置 9.1.5动态链接库的分类 9.2 创建MFC DLL9.2.1使用.DEF文件9.2.2使用关键字_declspec(dllexport)9.2.3 两种导出函数方法的比较9.3 使用MFC DLL 9.3.1 使用隐式链接9.3.2使用显式链接9.4 MFC扩展 DLL9.4.1 创建MFC扩展 DLL9.4.2使用MFC扩展 DLL习 题第10章 多线程编程10.1
12、概述10.1.1 问题的提出10.1.2 进程(Process)和线程(Thread)10.1.3 MFC对多线程编程的支持10.2 线程的创建10.2.1创建工作者线程10.2.2创建用户界面线程10.3 线程的控制10.3.1 终止一个线程10.3.2 悬挂和恢复线程10.3.3 线程的优先级10.4 线程间的通信10.4.1使用全局变量进行通信10.4.2使用自定义消息进行通信10.5 线程间的同步10.5.1使用CcriticalSection类10.5.2使用CMutex类10.5.3使用CSemaphore类10.5.4使用CEvent类习 题第11章 数据库编程11.1 概述11
13、.1.1 数据库和数据库管理系统11.1.2 关系数据库11.1.3 SQL语言11.1.4 Visual C+中访问数据库的相关技术11.2 ODBC技术11.2.1 ODBC概述11.2.2 MFC ODBC数据库类11.2.3 CRecordset类11.3 创建MFC ODBC数据库应用程序11.3.1准备数据库11.3.2 注册数据源11.3.3创建应用程序框架11.3.4 实现数据库程序的基本功能11.3.5实现数据库程序的高级功能11.4 ADO技术11.4.1 ADO访问数据源的特点11.4.2 ADO的结构11.4.3 ADO常用对象11.4.4 _bstr_t和_varia
14、nt_t类11.4.5 在VC中使用ADO11.5 ADO数据库应用实例11.5.1 实例简介11.5.2 创建过程习 题第12章 多媒体编程12.1多媒体程序设计基础12.1.1 多媒体程序设计的原理 12.1.2 多媒体数据格式12.2 Windows的多媒体服务12.2.1 高级音频函数12.2.2 多媒体控制接口MCI12.2.3 MCIWnd窗口类12.3 ActiveX控件12.3.1 ActiveX控件简介12.3.2 ActiveX控件的使用12.3.3 使用ActiveMovie控件的播放器习 题三、学时分配一览表教 学 时 间 分 配 表章节内容学时备注理论教学第1章Vis
15、ual C+开发环境2第2章MFC应用程序概述4第3章图形与文本6第4章菜单、工具栏和状态栏8第5章对话框6第6章Windows常用控件8第7章文档与视图4第8章打印编程2第9章动态链接库编程2第10章多线程编程2第11章数据库编程2第12章多媒体编程2理论学时合计48实验项目1框架、消息映射与绘制图形4设计性项目2菜单的使用4设计性项目3工具栏与状态栏4设计性项目4对话框4设计性项目5控件的使用4设计性项目6分割视图窗口与多文档的应用程序4设计性项目7打印与动态链接库编程4设计性项目8数据库与多媒体编程4设计性实验学时合计32总学时80四、教材及参考书目1、教材:Visual C+ 2019程序设计与应用,马石安/魏文平编著,清华大学出版社2、参考书:【1】Visual C+程序设计与应用教程题解与课程设计指导,马石安/魏文平编著,清华大学出版社【2】面向对象程序设计教程(C+语言描述),马石安/魏文平编著,清华大学出版社五、执行大纲的几点说明1、本课程是一门软件专业的高层次课程,在学习时学生至少要具有一门高级语言及软、硬件的基本知识。必修的先行课为:高级语言程序设计,面向对象程序设计。2、 Visual C+ 程序设计是一门实践性很强的课程,涉及面也比较广。为了使学生易于理解授课内容,在教学过程中,要注意理论和实验相结合。