计算机等级考试二级VB基础教程1.1VisualBasic概述1.VisualBasic是什么VisualBasic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言。“Visual”指的是开发图形用户界面(GUI)的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。“Basic”指的是BASIC(BeginnersAll-PurposeSymbolicInstructionCode)语言,一种在计算技术发展历史上应用得最为广泛的语言。VisualBasic在原有BASIC语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多和WindowsGUI有直接关系。专业人员可以用VisualBasic实现其它任何Windows编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。VisualBasicScriptingEdition(VBScript)是广泛使用的脚本语言,它是VisualBasic语言的子集,可嵌入HTML语言中,用于网页设计,如ASP(ActiveServerPage)文件。VB简单易学,通用性强,用途广泛。2.VB的功能VB可以用于可以开发多媒体、数据库、网络、图形等方面的应用程序。数据访问特性允许对包括MicrosoftSQLServer和其它企业数据库在内的大部分数据库格式建立数据库和前端应用程序,以及可调整的服务器端部件。有了ActiveX(TM)技术就可使用其它应用程序提供的功能,例如MicrosoftWord字处理器,MicrosoftExcel电子数据表及其它Windows应用程序。Internet能力强大,很容易在应用程序内通过Internet或intranet访问文档和应用程序,或者创建Internet服务器应用程序。已完成的应用程序是使用VisualBasic虚拟机真正.exe文件,可以自由发布。3.VB的发展VB是伴随Windows操作系统而发展的,在中国使用较广的版本有VB4.0、VB5.0、VB6.0。VB4.0是为配合WIN95的问世于1995年推出的,既可用于编写WIN3.X平台的16位应用程序也可编写WIN95平台的32位应用程序;VB5.0主要用于编写WIN95平台的32位应用程序,较之VB4.0主要扩展了数据库、ActiveX和Internet方面的功能;VB6.0是与WIN98配合于1998年推出的,进一步加强了数据库、Internet和创建控件方面的功能。4.VB中的几个常用术语工程(Project):是指用于创建一个应用程序的文件的集合。对象(object):可控制的某个东西,VB中主要有两类对象:窗体和控件。窗体(form):应用程序的用户界面,即windows。控件(control):指的是各种按扭、标签、文本框等。属性(property):是指对象的特性,如大小、标题或颜色。ActiveX:ActiveX是基于componentobjectmodel(com)的可视化控件结构的商标名称.它是一种封装技术,提供封装COM组件并将其置入应用程序(如WEB浏览器)的一种方法.ComponentsObjectModel(COM):是软件组件互相通讯的一种方式。它是一种二进制和网络标准,允许任意两个组件互相通讯,而不管它们是在什么计算机上运行(只要计算机是相连的),不管各计算机运行的是什么操作系统(只要该操作系统支持COM),也不管该组件是用什么语言编写的。5.VB的系统特性(1)工程限制1)代码限制:可被加载到窗体、类或标准模块的代码总数限于65,534行。一行代码限于1023个字节。在一行中的实际文本之前最多只能有256个空格的前导,在一个逻辑行中最多只能有25个续行符(_)。2)过程、类型和变量对每个模块的过程数没有限制。每个过程可包含至多64K的代码。如果过程或模块超过这一限制,VisualBasic便产生编译时间错误。如果遇到这种错误,可将特别大的过程分割成若干个较小的过程,或将模块级声明移到另一模块,来避免此类错误发生。VisualBasic用表来保存代码中的标识符名(变量、过程、常量等)。每个表限于64K。3)动态链接库声明表每个窗体和代码模块使用一个描述动态链接库入口点的结构的表。每个结构约40个字节,表的大小限于64K,形成每个模块大约有1500个声明。4)工程名表整个应用程序用一张包含所有名称的表。这些名称包括:常量名、变量名、自定义的类型定义名、模块名、DLL过程声明名。对工程名表总大小没有限制,但是区分大小写的条目不得超过32K。如果超过了32K的限制,可以在不同的模块中重新使用private标识符以限制区分大小写的条目数到达32K。5)输入表在不同的模块中每引用一个标识符,便在输入表中创建一个条目。每一个这样的入口最小是24字节,但限于64K,这样每个模块大约可以有2000个引用。6)模块条目表该表中每个模块最多达125个字节,但有64K的总限制,这样每个工程大约可以产生400个模块。VB中的变量名不多于255个字符,而窗体、控件、模块和类名不多于40个字符。(2)工程文件格式VB在创建和编译工程时要产生许多文件,分为:设计时文件、杂项开发文件和运行时文件。设计时文件是工程的建造块,例如基本模块(.bas)和窗体模块(.frm)。杂项文件是由VisualBasic开发环境中的各种不同的进程和函数产生的,例如打包和展开向导从属文件(.dep)。1.2VB6.0的集成开发环境简介VB集成开发环境(IDE——IntegratedDevelopingEnvironment)由以下元素组成:1.标题栏用于显示正在开发或调试的工程名和系统的工作状态(设计态、运行态、中止态)。2.菜单栏用于显示所使用的VisualBasic命令。VB6.0标准菜单包括:3.工具栏在编程环境下用于快速访问常用命令。缺省情况下,启动VB后显示“标准”工具栏,附加的编辑、窗体设计和调试的工具栏可以从“视图”菜单上的“工具栏”命令中移进或移出。4.窗体设计器用来设计应用程序的界面。启动VB后,窗体设计器中自动出现一个名为Form1的空白窗体,可以在该窗体中添加控件、图形和图片等来创建所希望的外观,窗体的外观设计好后,从菜单中选择“文件”→“保存窗体”→在保存对话框中给出合适的文件名(注意扩展名),并选择所需的保存位置→确定。需要再设计另一个窗体时,单击工具栏上的“添加窗体”按钮即可。5.控件(工具)箱由一组控件按钮组成,用于设计时在窗体中放置控件。除了缺省的工具箱布局之外,还可以通过从上下文菜单中选定“添加选项卡”并在结果选项卡中添加控件来创建自定义布局。6.弹出式(上下文)菜单在要使用的对象上单击鼠标右键即可打开快捷菜单,其上会出现与当前对象相关的经常执行的操作,以加快操作速度。7.工程管理器窗口用于浏览工程中所包含的窗体和模块,还可以从中查看代码、查看对象。8.属性窗口是VB中一个比较复杂的窗口,其中列出了对选定窗体和控件的属性设置值。VB中正是通过改变属性来改变对象的特征,如大小、标题或颜色。9.对象浏览器列出工程中有效的对象,并提供在编码中漫游的快速方法。可以使用“对象浏览器”浏览在VB中的对象和其它应用程序,查看对那些对象有效的方法和属性,并将代码过程粘贴进自己的应用程序。10.对象浏览器右击窗体中的对象、从工程管理器中点“查看代码”按钮。11.窗体布局窗口FormLayoutwindow允许使用表示屏幕的小图象来布置应用程序中各窗体的位置。12.立即、本地和监视窗口这些附加窗口是为调试应用程序提供的,它们只在IDE之中运行应用程序时才有效。1.3面向对象程序设计的基本概念1.基本术语(1)对象和对象类对象是代码和数据的组合,可以作为一个单位来处理。对象可以是应用程序的一部分,比如可以是控件或窗体。整个应用程序也是一个对象。VB中的每个对象都是用类定义的。用饼干模子和饼干之间的关系作比,就会明白对象和它的类之间的关系。饼干模子是类。它确定了每块饼干的特征,比如大小和形状。用类创建对象,对象就是饼干。类是面向对象程序设计的核心技术,可以理解成一种定义了对象行为和外观的模板;把对象看作是类的原原本本的复制品,类具有继承性、封装性、多态性、抽象性。(2)属性属性是对对象特性的描述,VB为每一类对象都规定了若干属性,设计中可以改变具体对象的属性值。比如窗体的背景颜色、高度与宽度。(3)事件(Event)事件是发生在对象上的动作。事件的发生不是随意的,某些事件仅发生在某些对象上。在VB中事件的调用形式是:PrivateSub对象名_事件名(事件内容)EndSub(4)方法(Method)方法指的是控制对象动作行为的方式。它是对象本身内含的函数或过程,它也是一个动作,是一个简单的不必知道细节的无法改变的事件,但不称作事件;同样,方法也不是随意的,一些对象有一些特定的方法。在VB里方法的调用形式是:对象名.方法名2.属性、方法和事件之间的关系VB对象具有属性、方法和事件。属性是描述对象的数据;方法告诉对象应做的事情;事件是对象所产生的事情,事件发生时可以编写代码进行处理。VB的窗体和控件是具有自己的属性、方法和事件的对象。可以把属性看作一个对象的性质,把方法看作对象的动作,把事件看作对象的响应。日常生活中的对象,如小孩玩的气球同样具有属性、方法和事件。气球的属性包括可以看到的一些性质,如它的直径和颜色。其它一些属性描述气球的状态(充气的或未充气的)或不可见的性质,如它的寿命。通过定义,所有气球都具有这些属性;这些属性也会因气球的不同而不同。气球还具有本身所固有的方法和动作。如:充气方法(用氦气充满气球的动作),放气方法(排出气球中的气体)和上升方法(放手让气球飞走)。所有的气球都具备这些能力。气球还有预定义的对某些外部事件的响应。例如,气球对刺破它的事件响应是放气,对放手事件的响应是升空。在VB程序设计中,基本的设计机制就是:改变对象的属性、使用对象的方法、为对象事件编写事件过程。程序设计时要做的工作就是决定应更改哪些属性、调用哪些方法、对哪些事件作出响应,从而得到希望的外观和行为。3.事件驱动模型在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时调用过程。在事件驱动的应用程序中,代码不是按照预定的路径执行,而是在响应不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。因为事件的顺序是无法预测的,所以在代码中必须对执行时的“各种状态”作一定的假设。当作出某些假设时(例如,假设在运行来处理某一输入字段的过程之前,该输入字段必须包含确定的值),应该组织好应用程序的结构,以确保该假设始终有效(例如,在输入字段中有值之前禁止使用启动该处理过程的命令按钮)。在执行中代码也可以触发事件。例如,在程序中改变文本框中的文本将引发文本框的Change事件。如果Change事件中包含有代码,则将导致该代码的执行。如果原来假设该事件仅能由用户的交互操作所触发,则可能会产生意料之外的结果。正因为这一原因,所以在设计应用程序时理解事件驱动模型并牢记在心是非常重要的。4.交互式开发传统的应用程序开发过程可以分为三个明显的步骤:编码、编译和测试代码。但是VisualBasic与传统的语言不同,它使用交互式方法开发应用程序,使三个步骤之间不再有明显的界限。VB在编程者输入代码时便进行解释,即时捕获并突出显示大多数语法或拼写错误。看起来就象一位专家在监视代码的输入。除即时捕获错误以外,VB也在输入代码时部分地编译该代码。当准备运行和测试应用程序时,只需极短时间即可完成编译。如果编译器发现了错误,则将错误突出显示于代码中。这时可以更正错误并继续编译,