VBA教学大纲.docx
《VBA教学大纲.docx》由会员分享,可在线阅读,更多相关《VBA教学大纲.docx(60页珍藏版)》请在冰豆网上搜索。
![VBA教学大纲.docx](https://file1.bdocx.com/fileroot1/2023-4/16/775c06da-263a-44e6-a60c-decac4c32572/775c06da-263a-44e6-a60c-decac4c325721.gif)
VBA教学大纲
ACCP3.0 SEM2
《VisualBasic高级编程》
教学大纲
2003年1月10日
Version1.0
修改记录:
版本
日期
修改人
1.0
2003-1-10
遥远
1.1
2003-1-2
遥远
2.0
2003-8-8
遥远
一、课程目标
✓理解软件开发工程化协作的基本思想,使用VisualSourceSafe进行代码管理和协同开发;
✓在VisualBasic中使用类进行数据封装,应用面向对象程序设计的基本思想进行组件设计和开发,为.NET、JAVA的学习打下良好的基础;
✓使用打印机进行打印绘图和打印输出、使用系统剪贴板对象进行应用程序间简单的数据交换、使用APP对象进行应用程序的参数设置;
✓使用Collection集合对象增强程序可伸缩性,使用ListView、TreeView控件强化界面设计;
✓在VisualBasic中,与Word、Excel等应用程序进行交互来实现文档自动化;
✓使用WIN32API来强化应用程序的功能;
✓进一步理解数据库访问技术,能够使用COMMAND对象访问存储过程,能够在数据库中对二进制文件进行存取;
✓理解TCP/IP协议,使用WINSOCKED控件进行远程数据传输;
✓自定义安装程序、帮助程序的编制和使用InstallShield进行程序打包;
二、课程对象
¾ACCP第二学期的学员;
三、课程所需的预备知识
¾《VisualBasic可视化程序设计》
¾《SQLSERVER数据库设计和实现》
¾《面向对象基础:
C++实现》
四、课程学时
理论课
上机课
在线培训
指导学习
总学时
22
22
2
6
52
五、课程地位
六、课程内容组织结构
图2:
《VisualBasic高级编程》课程内容组织结构
注:
本图是内容结构和安排,不代表章节的次序。
七、课程各章内容、重点、组织结构及授课要求
理论部分,共 22 学时
第一章、使用系统对象增强程序
时间
两个小时
本章目标
复习VisualBasic可视化程序设计的相关内容;
使用Printer对象的主要属性、方法和事件进行文本和图像的打印输出;
使用Clipboard的方法在应用程序之间传递数据;
使用Screen对象的属性调整窗体位置;
使用App对象属性增强应用程序特性;
内容概述
1、简要复习《VISUALBASIC可视化程序设计》,概括其主要内容;
2、介绍本课程的目标,教材和上机课的总体结构;
3、引入PRINTER对象,介绍其关键属性、方法;
4、介绍CLIPBOARD、SCREEN的关键属性和关键方法;
5、使用APP对象,介绍其关键属性;
内容组织结构
1.1VisualBasic可视化程序设计内容概要
对《VisualBasic可视化程序设计》的内容逐章进行回顾,概要说明每章包括的核心内容和知识点。
1.2课程目标
按照高级组件的使用、面向对象的程序设计、网络和操作系统支持、产品化四个部分,对本课程将要学习的内容进行归纳,并说明本课程的总体目标。
1.3VB中对象的定义和初始化
说明从本课程开始,将要大连使用对象进行程序设计,总结对象定义、内存分配、对象赋值等关键字及用法;
1.4Printer对象的使用
说明打印机对象的作用、特性和定义,然后说明Printer对象的主要属性和方法,最后举一个在打印机上绘制表格的例子来进行特性的说明。
1.5使用Cipboard和Screen
分别说明剪贴板和屏幕对象作用、应用特性,列举了Cipboard的方法、Screen对象的属性,对如何使用这些方法和属性分别举例进行说明。
1.6使用App对象
说明应用程序对象所能提供的一些程序的特性,介绍一些重要的属性,如Path、PrevInstance等,并说明这些属性如何在程序中进行引用。
重点和难点
使用打印机对象对数据进行打印输出,使用APP对象的关键属性或者方法获取或者返回应用程序特性;
所选用的例子
使用屏幕对象、剪贴版、打印机和APP对象的操作示例;
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第二章、使用集合增强界面设计
时间
两个小时
本章目标
理解集合对象的概念;
使用Collection对象的方法;
通过Collection组织和保存数据;
使用列表视图(ListView)控件的属性和方法;
使用列表视图显示数据;
使用树视图(TreeView)控件的属性和方法;
树视图的子对象、事件;
内容概述
1、总结和归纳已经学习过的集合对象、集合对象的特点;
2、COLLECTION对象的属性和方法,优点和应用特点;
3、使用LISTVIEW对象进行界面设计,使用LISTITEMS和LISTITEM对象;
4、使用TREEVIEW对象进行界面设计,使用NODES和NODE对象;
内容组织结构
2.1集合对象
总结和归纳已经学习过的集合对象,说明集合对象的特点,举例说明Form对象的Controls集合对象及对元素的枚举特色。
引入Collection集合对象,说明其优点,举例说明其属性和方法的使用。
2.2列表视图(ListView)
ListView控件的整体应用特点、主要的属性、方法和事件、ListItems集合对象和ListItem子对象。
举例说明ListView控件的使用。
2.3树视图(TreeView)控件
TreeView控件的整体应用特点、主要的属性、方法和事件、Nodes集合对象和Node子对象的使用。
举例说明TreeView控件的使用。
重点和难点
理解和使用集合对象,包括NODES和LISTITEMS集合对象的使用;
所选用的例子
使用Collection老保存数据、使用LISTVIEW、TREEVIEW来进行界面设计;
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第三章、应用程序体系结构和类
时间
两个小时
本章目标
了解应用程序三层或多层应用程序体系结构;
理解应用程序代码层次结构的特点、优点;
理解VisualBasicOOP的特性;
在VisualBasic中自定义类,属性、方法和事件的实现;
使用VB提供的对象策略实现代码的分层结构;
内容概述
1、应用程序三层和多层应用体系结构的必要性和特点;
2、从分工协作、程序的可扩展性、可维护性的角度引入程序的层次概念,介绍流行的数据访问层、数据和数据处理层、界面层等最流行的应用程序层次结构;
3、说明VB面向对象概念和特点;
4、介绍面向对象的数据封装和实现,私有和公有,以及对象的三要素:
属性、方法和事件;
5、VB借助类模块的对象的实现,介绍其属性、方法和事件的代码的实现和机制,重点介绍事件的原理;
6、实现的类的实例化和属性、方法的调用,事件代码的编写和触发;
7:
说明如何构造类模块来实现代码的分层结构;
内容组织结构
3.1三层或多层应用程序体系结构简介
说明三层和多层应用体系结构的必要性,三层应用体系结构的组成、各层次的功能,多层应用体系结构的特点。
引入代码分层实现的必要性、分层结构实现的一个模型、界面、数据处理和数据访问层的事务范围。
3.2使用VisualBasic进行OOP(面向对象编程)
总结VisualBasic 中面向对象程序设计的特点,比较标准模块和类模块的异同。
在VB中,使用类模块封装对象的属性、方法和事件,事件的机制。
3.3VB中代码分层结构的实现
结合类的实现和对象的使用,举例说明代码分层结构中的数据访问层、数据处理层和界面层的实现。
重点和难点
VB中类的实现,事件机制,代码的分层结构的概念和实现。
所选用的例子
使用CLASS来实现代码的分层结构。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第四章、COM和ACTIVEX控件设计
时间
两个小时
本章目标
COM的概念、特点和优点;
理解基于组件技术的开发和应用模式;
理解ActiveX控件基于COM的实现机制;
设计自定义控件的属性、方法和事件;
设计自定义控件的属性页;
在工程组中调试自定义控件;
组件注册和组件引用;
内容概述
1、COM(组件对象模型)和ActiveX技术概述;
2、使用VB编写ACTIVEX控件,属性、方法和事件的设置;
3、控件属性页的实现;
4、控件编译和注册、相关的概念;
内容组织结构
4.1COM简介
COM的概念和特点,基于组件开发的模型,进程外和进程内组件介绍,COM服务器的类型。
4.2ActiveX简介
ActiveX的概念,ActiveX和COM之间的关系。
4.3VisualBasic中的组件-ActiveX
VB中可实现的ActiveX组件类型,各组件的应用特点、应用场合简介。
4.4VisualBasic中的ActiveX控件
ActiveX控件的特点、实现方式;
4.5创建ActiveX控件
创建ActiveX控件的属性、方法和事件,使用控件向导实现ActiveX的封装。
控件属性页的特点和实现。
4.6ActiveX控件的调试
控件不同的调试模式和设置,说明如何在工程组中进行控件的调试。
4.7ActiveX控件的使用
在其他程序设计过程中引用ActiveX控件,组件的编译和注册、相关的术语、组件的缺省属性等应用时相关的概念。
重点和难点
ActiveX控件的设计和数据封装、属性页的设计。
所选用的例子
ActiveX控件向导、设计ActiveX控件的属性、方法和事件的例子程序。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第五章、ACTIVEX组件技术
时间
两个小时
本章目标
理解组件和组件引用;
编写ActiveXDLL组件;
理解和应用组件的调试和兼容性配置;
在客户端实现组件接口和事件回调;
编写ActiveXEXE组件;
设置组件的属性;
内容概述
1、ACTIVEXDLL组件的特点,组件的封装;
2、ActiveXDLL组件的属性、方法和事件的实现,组件的工程组调试;
3、组件类的实例特征INSTANCE属性的配置,实例特征;
4、设置组件的兼容性特点,通过Implements关键词实现面向对象的多态和客户程序的回调;
5、ActiveXEXE组件的特点,ActiveXEXE组件的实现;
6、ACTIVEXEXE的例子,使用事件执行回调;
7、组件的实例化的类型总结,前期绑定和后期绑定;
内容组织结构
5.1组件和组件设计
说明组件和组件设计的类型,所带来的好处。
5.2ACTIVEXDLL封装
封装ACTIVEXDLL的属性、方法和事件,ACTIVEXDLL组件的工程组调试,配置组件的实例特性、兼容性设置,在设置兼容性的时候,例子中使用了Implements关键词,说明如何实现客户程序的接口和回调,以实现面向对象多态的特征。
5.3ACTIVEXEXE封装
ACTIVEXEXE封装的组件的特点,封装ActiveXEXE的例子程序,在说明事件引用的时候,使用到了服务程序的事件通知和客户程序的回调,以实现了客户程序的异步操作。
5.4对象引用和组件实例化
总结对象引用的不同方式,说明组件实例化的形式:
前期绑定和后期绑定的不同的模式。
重点和难点
ActiveXDLL和ActiveXEXE组件的特点和实现,组件的多态的特性和使用事件实现客户程序的异步操作;
所选用的例子
压力测试的客户和服务程序,类加计算程序的不同方式的异步操作和实现。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第六章、应用程序与WORD和EXCEL的交互
时间
两个小时
本章目标
使用Word应用程序、文档对象实现桌面文档交互;
使用Excel工作簿、工作表对象实现表格自动化操作;
掌握Word自定义宏及相关的配置;
在VBE中使用应用程序、文档、工作簿和工作表对象;
自定义文档模板及操作;
内容概述
1、WORD和EXCEL层次式对象模型;
2、WORD的Application对象和Document对象的使用;
3、Excel的WorkBook和WorkSheet对象的使用;
4、WORD的宏、宏录制和文档模板的定义;
5、VBE程序设计概要、自定义宏和加载项;
6、Word、Excel对象的事件、事件的引用方式;
内容组织结构
6.1Word和Excel对象简介
说明Word和Excel都是ActiveXEXE对象并且可以进行外部接口方式的访问,对象的引用和创建方法,说明Application、Document、WorkBook、WorkSheet对象的属性、方法,并、分别举例进行说明。
6.2Word宏与文档模板
Word中的宏的定义、录制操作,使用宏自定义操作按钮;在VBE集成环境中查看宏,使用VBE进行程序设计。
自定义文档模板和加载项的操作,在文档模板中自定义宏、按钮。
对VBE工程进行加密。
6.3在应用程序中使用WORD对象
6.3.1WORD应用程序对象的创建
6.3.2通过代码控制WORD的行为
6.3在宏中引用对象事件
说明Word、EXCEL的Document、WorkBook、WorkSheet对象事件的引用。
通过WithEvents引用Application对象的事件。
重点和难点
Word、EXCEL的Application、Document、WorkBook、WorkSheet对象的使用,在VBE中对文档进行控制。
所选用的例子
使用WORD和EXCEL进行文档控制的操作。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第七章、存储过程和二进制存储
时间
两个小时
本章目标
了解ADO对象模型;
使用ADO命令对象访问数据库的存储过程;
理解和掌握二进制文件的磁盘读写操作;
理解二进制数据的数据库方式的存取操作;
内容概述
1、总结和概括使用ADOConnection、RecordSet对象访问数据库;ADO对象模型及不同对象的作用总结;
2、在ADO中进行事务处理;
3、Command对象及相关的Parameter、Parameters属性和方法介绍,举例说明如何使用Command对象访问存储过程;
4、二进制数据文件的读取、存储等磁盘文件操作;
5、举例说明二进制数据文件的数据库存储;
内容组织结构
7.1使用ADO访问数据库
总结使用Command、RecordSet访问数据库,使用ADO连接实现事务。
总结ADO的对象模型,概要说明ADO各对象的作用。
7.2使用COMMAND访问存储过程
存储过程的参数和ADO的Parameter对象、Parameter对象的属性和方法,使用Command对象的参数集访问存储过程。
7.3二进制文件的数据库存储
说明二进制数据库存储的机制,GetChunk和AppendChunk关键词,并且举一个比较详细的例子进行说明。
重点和难点
带参数的存储过程的访问、二进制数据的数据库方式的存储;
所选用的例子
访问Access的存储过程,SQLServer中图片的存储。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第八章、使用WIN32API增强程序功能
时间
两个小时
本章目标
理解Win32API的概念;
通过API浏览器工具查看和使用Win32API;
使用Win32API的参数传递规则;
使用常见Win32API与操作系统实现交互;
内容概述
1、WIN32API作用、定义、分类;
2、使用WIN32API文本浏览器查阅和导入Win32API的定义、结构和常数;
3、在应用程序中使用Win32API的相关概念:
定义、参数传递规则;
4、使用API来访问系统资源、注册表,常用API列表;
5、使用API创建任务栏的程序指示器的例子程序;
内容组织结构
8.1WIN32API概述
说明使用Win32API的目的和意义,API的分类及如何使用APITextView工具导入API的定义、结构和常量到VBIDE。
8.2在应用程序中使用WIN32API
说明Win32API参数的类型,不同参数的传递规则,使用Win32API访问系统内存、注册表资源的例子,常用的win32API的列表。
8.3使用API实现任务栏程序指示器
任务栏指示器的作用和意义,实现概述,然后进行界面设计、API的引用、过程和函数的编写,实现一个任务栏的程序指示器。
重点和难点
Win32API参数的传递规则,实现程序指示器相关的API、操作系统消息机制、函数地址传递。
所选用的例子
注册表、内存访问的程序,完整的实现程序指示器的例子程序。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第九章、通过WINSOCK控件进行网络数据传输
时间
两个小时
本章目标
理解UDP(用户数据报协议)和TCP(传输控制协议)之间的区别;
使用WinSock控件的主要属性和方法实现数据传输;
熟悉TCP协议上的文件传输;
内容概述
1、UDP和TCP协议的作用和比较;
2、WISOCK控件的属性和方法、通讯机制;
3、WINSOCK的关键属性和关键方法;
4、使用WINSOCK控件进行网络数据传输的例子;
内容组织结构
9.1UDP和TCP简介
回顾TCP协议的作用,说明UDP和TCP协议的相同和不同之处,UDP协议的使用场合。
9.2使用WOSOCKED控件
WinSock控件的总结介绍,主要的属性、方法和事件的说明,网络通讯机制;
9.3使用WinSock控件传输文件
例子程序,构造一个WinSock服务器程序和客户程序实现应答式数据文件的传输。
重点和难点
关键的通讯配置、实现WinSock客户和服务程序。
所选用的例子
使用WINSOCKED控件传输文件。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第十章、编程规定和代码管理
时间
两个小时
本章目标
理解和掌握界面设计的一些基本原则;
理解和掌握一些基本编码原则;
熟悉VisualSourceSafe的原理和基本操作;
使用VisualSourceSafe实现代码借入、借出和文件比较操作;
内容概述
1、关于界面设计需要注意的技术和习惯上的一些规范,举例说明好的和不符合规范的设计;
2、关于代码书写需要注意的技术和习惯上的一些规范,举例进行说明;
3、讲述代码管理和版本管理的必要性和重要性;
4、VisualSourceSafe的功能和模块;
5、VisualSourceSafe的管理操作;
6、在VisualBasic集成环境中进行代码的借出、归还、对比和合并操作;
内容组织结构
10.1界面设计的一些原则
指出界面设计相关的:
设计和准备、整体一致性、符合习惯、美观和大方、简单设计等相关的一些原则,并举例说明。
10.2代码编写的一些原则
分主题说明:
使用OptionExplicit强制变量声明、使用常量代替硬编码、枚举数据类型、适应“&”连接字符串、使用SelectCase表达分支判断、GOTO语句的使用场合、尽量缩小变量的作用域等方面的主题,并且在每个主题中给出详细的例子。
10.3使用VisualSourceSafe进行源代码管理
使用VSS的必要性,VSS的总体功能说明,操作VSS创建数据库、创建用户,在VBIDE中添加受管理项目代码,在VSS中设置临时目录,代码和工程的借入和借出操作等。
重点和难点
掌握界面设计的原则和编码规范,VSS的使用。
所选用的例子
界面设计的例子、代码技巧的一些例子。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
第十一章、应用程序帮助和安装软件包
时间
两个小时
本章目标
在应用程序中实现即时帮助与提示;
使用HCW帮助制作工具设计和实现帮助文件;
掌握自定义应用程序打包和展开向导;
使用Insallshield打包程序制作安装包;
内容概述
1、应用程序帮助、帮助文件、帮助提示等方面的主题;
2、使用HCW制作帮助文件系统,包括主题文件、目录文件和工程文件的制作;
3、使用PackageAndDeploymentWizard对已经完成的项目进行打包,并介绍如何控制PackageWizard的源代码来自定义安装;
4、使用InstallShieldWizard专业安装工具来进行程序打包;
内容组织结构
11.1应用程序工具提示和帮助系统
帮助文件的格式、如何在程序中引用帮助文件,在应用程序中设置和使用控件提示信息和“WhatsThis”帮助。
11.2设计和实现帮助
分别说明使用HCW制作帮助主题、帮助目录、帮助项目文件,以一个例子来说明如何在RTF文件的基础上创建帮助文件系统。
11.3使用打包和展开向导打包程序
说明打包和展开向导的作用和操作,以向导的方式说明一个打包的例子,展开包的例子及说明;通过修改安装包程序来说明如何定制安装程序。
11.4使用InstallShieldProfessional制作安装包
通过介绍InstallShield的向导功能来说明其提供的功能,在InstallShieldProfessional集成环境中说明如何配置安装工程的选项及相关的注意事项。
重点和难点
帮助文件的制作和引用,使用InstallShield制作帮助文件系统。
所选用的例子
在RTF文件的基础上,制作HWC的帮助文件的例子,使用InstallShield 对程序指示器工程文件进行打包的例子。
课后练习思考
选择题,对本课重点内容进行复习,并进行一些相关内容的扩展。
上机部分,共22学时
第一阶段使用系统对象增强程序
阶段时间安排
理论课第一章讲述之后
学时安排
2学时
阶段目标
使用Screen获取桌面对象属性;
使用App对象的属性增强程序的特征;
使用Clipboard对象进行应用程序数据交换;
使用Printer对象进行打印输出;
知识点
1、使用打印机对象进行绘图输出;
2、使用剪贴板对象、屏幕对象关键方法和属性增强应用程序的功能;
3、使用APP对象的关键方法和属性增强应用程序特性;
内容安排
第一阶段:
指导部分
以一个简单的程序演示Screen对象的属性及使用;
演示APP对象关键属性在运行时的输出;