1、(完整版)计算机二级vb教材1.1Visual Basic 概述1。Visual Basic是什么 Visual Basic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言. “Visual” 指的是开发图形用户界面 (GUI) 的方法不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可. “Basic”指的是 BASIC (Beginners AllPurpose Symbolic Instruction Code) 语言,一种在计算技术发展历史上应用得最为广泛的语言。Visual Basic 在原有 BASIC 语言的基础上进
2、一步发展,至今包含了数百条语句、函数及关键词,其中很多和 Windows GUI 有直接关系。专业人员可以用 Visual Basic 实现其它任何 Windows 编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。Visual Basic Scripting Edition (VBScript) 是广泛使用的脚本语言,它是 Visual Basic 语言的子集,可嵌入HTML语言中,用于网页设计,如ASP(Active Server Page)文件。VB简单易学,通用性强,用途广泛。2。VB的功能 VB可以用于可以开发多媒体、数据库、网络、图形等方面的应用程序。数据访问特性
3、允许对包括 Microsoft SQL Server 和其它企业数据库在内的大部分数据库格式建立数据库和前端应用程序,以及可调整的服务器端部件。有了 ActiveX(TM) 技术就可使用其它应用程序提供的功能,例如 Microsoft Word 字处理器,Microsoft Excel 电子数据表及其它 Windows 应用程序。Internet 能力强大,很容易在应用程序内通过 Internet 或 intranet访问文档和应用程序,或者创建 Internet 服务器应用程序。 已完成的应用程序是使用Visual Basic 虚拟机真正 .exe 文件,可以自由发布。3.VB的发展VB是伴
4、随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中主
5、要有两类对象:窗体和控件.窗体(form):应用程序的用户界面,即windows.控件(control):指的是各种按扭、标签、文本框等。属性(property):是指对象的特性,如大小、标题或颜色.ActiveX:ActiveX是基于component object model(com)的可视化控件结构的商标名称.它是一种封装技术,提供封装COM组件并将其置入应用程序(如WEB浏览器)的一种方法.Components Object Model (COM): 是软件组件互相通讯的一种方式。它是一种二进制和网络标准,允许任意两个组件互相通讯,而不管它们是在什么计算机上运行(只要计算机是相连的),
6、不管各计算机运行的是什么操作系统(只要该操作系统支持 COM),也不管该组件是用什么语言编写的.5。 VB的系统特性(1)工程限制 1)代码限制: 可被加载到窗体、类或标准模块的代码总数限于 65,534 行。一行代码限于 1023 个字节.在一行中的实际文本之前最多只能有 256 个空格的前导,在一个逻辑行中最多只能有 25 个续行符 ( _)。2)过程、类型和变量对每个模块的过程数没有限制。每个过程可包含至多 64K 的代码。如果过程或模块超过这一限制,Visual Basic 便产生编译时间错误。如果遇到这种错误,可将特别大的过程分割成若干个较小的过程,或将模块级声明移到另一模块,来避免
7、此类错误发生。Visual Basic 用表来保存代码中的标识符名(变量、过程、常量等)。每个表限于 64K。3)动态链接库声明表 每个窗体和代码模块使用一个描述动态链接库入口点的结构的表。每个结构约 40 个字节,表的大小限于 64K,形成每个模块大约有 1500 个声明。4)工程名表 整个应用程序用一张包含所有名称的表。这些名称包括: 常量名 、 变量名 、 自定义的类型定义名、 模块名、 DLL 过程声明名.对工程名表总大小没有限制,但是区分大小写的条目不得超过 32K.如果超过了 32K 的限制,可以在不同的模块中重新使用 private 标识符以限制区分大小写的条目数到达 32K。5
8、)输入表在不同的模块中每引用一个标识符,便在输入表中创建一个条目。每一个这样的入口最小是 24 字节,但限于 64K,这样每个模块大约可以有 2000 个引用。 6)模块条目表该表中每个模块最多达 125 个字节,但有 64K 的总限制,这样每个工程大约可以产生 400 个模块。VB 中的变量名不多于 255 个字符,而窗体、控件、模块和类名不多于 40 个字符。(2)工程文件格式VB 在创建和编译工程时要产生许多文件,分为:设计时文件、杂项开发文件和运行时文件.设计时文件是工程的建造块,例如基本模块 (.bas) 和窗体模块 (.frm).杂项文件是由 Visual Basic 开发环境中的
9、各种不同的进程和函数产生的,例如打包和展开向导从属文件 (。dep)。1。2 VB 6.0 的集成开发环境简介VB 集成开发环境 (IDE-Integrated Developing Environment ) 由以下元素组成:1。 标题栏用于显示正在开发或调试的工程名和系统的工作状态(设计态、运行态、中止态)。2. 菜单栏用于显示所使用的 Visual Basic 命令.VB6。0标准菜单包括:3. 工具栏在编程环境下用于快速访问常用命令。缺省情况下,启动 VB后显示“标准工具栏,附加的编辑、窗体设计和调试的工具 栏可以从“视图”菜单上的“工具栏”命令中移进或移出.4. 窗体设计器用来设计应
10、用程序的界面。启动VB后,窗体设计器中自动出现一个名为Form1的空白窗体,可以在该窗体中添加控件、图形和图片等来创建所希望的外观,窗体的外观设计好后,从菜单中选择“文件“保存窗体”在保存对话框中给出合适的文件名(注意扩展名),并选择所需的保存位置确定。需要再设计另一个窗体时,单击工具栏上的“添加窗体”按钮即可.5. 控件(工具)箱由一组控件按钮组成,用于设计时在窗体中放置控件。除了缺省的工具箱布局之外,还可以通过从上下文菜单中选定“添加选项卡”并在结果选项卡中添加控件来创建自定义布局.6。 弹出式(上下文)菜单在要使用的对象上单击鼠标右键即可打开快捷菜单,其上会出现与当前对象相关的经常执行的
11、操作,以加快操作速度。7. 工程管理器窗口用于浏览工程中所包含的窗体和模块,还可以从中查看代码、查看对象.8. 属性窗口是VB中一个比较复杂的窗口,其中列出了对选定窗体和控件的属性设置值。VB中正是通过改变属性来改变对象的特征,如大小、标题或颜色.9. 对象浏览器列出工程中有效的对象,并提供在编码中漫游的快速方法。可以使用“对象浏览器”浏览在 VB中的对象和其它应用程序,查看对那些对象有效的方法和属性,并将代码过程粘贴进自己的应用程序。10. 对象浏览器右击窗体中的对象、从工程管理器中点“查看代码按钮.11. 窗体布局窗口 Form Layout window允许使用表示屏幕的小图象来布置应用
12、程序中各窗体的位置。12。 立即、本地和监视窗口这些附加窗口是为调试应用程序提供的,它们只在 IDE 之中运行应用程序时才有效。1。3 面向对象程序设计的基本概念1。基本术语(1) 对象和对象类对象是代码和数据的组合,可以作为一个单位来处理。对象可以是应用程序的一部分,比如可以是控件或窗体。整个应用程序也是一个对象。VB中的每个对象都是用类定义的。用饼干模子和饼干之间的关系作比,就会明白对象和它的类之间的关系。饼干模子是类。它确定了每块饼干的特征,比如大小和形状.用类创建对象,对象就是饼干.类是面向对象程序设计的核心技术,可以理解成一种定义了对象行为和外观的模板;把对象看作是类的原原本本的复制
13、品,类具有继承性、封装性、多态性、抽象性。(2) 属性属性是对对象特性的描述,VB为每一类对象都规定了若干属性,设计中可以改变具体对象的属性值。比如窗体的背景颜色、高度与宽度。(3) 事件(Event)事件是发生在对象上的动作。事件的发生不是随意的,某些事件仅发生在某些对象上。 在VB中事件的调用形式是:Private Sub对象名_事件名(事件内容)End Sub(4) 方法(Method) 方法指的是控制对象动作行为的方式。它是对象本身内含的函数或过程,它也是一个动作,是一个简单的不必知道细节的无法改变的事件,但不称作事件;同样,方法也不是随意的,一些对象有一些特定的方法。在VB里方法的调
14、用形式是: 对象名。方法名2. 属性、方法和事件之间的关系VB 对象具有属性、方法和事件.属性是描述对象的数据;方法告诉对象应做的事情;事件是对象所产生的事情,事件发生时可以编写代码进行处理.VB 的窗体和控件是具有自己的属性、方法和事件的对象.可以把属性看作一个对象的性质,把方法看作对象的动作,把事件看作对象的响应。日常生活中的对象,如小孩玩的气球同样具有属性、方法和事件。气球的属性包括可以看到的一些性质,如它的直径和颜色。其它一些属性描述气球的状态(充气的或未充气的)或不可见的性质,如它的寿命.通过定义,所有气球都具有这些属性;这些属性也会因气球的不同而不同。气球还具有本身所固有的方法和动
15、作.如:充气方法(用氦气充满气球的动作),放气方法(排出气球中的气体)和上升方法(放手让气球飞走)。所有的气球都具备这些能力。气球还有预定义的对某些外部事件的响应。例如,气球对刺破它的事件响应是放气,对放手事件的响应是升空。在VB程序设计中,基本的设计机制就是:改变对象的属性、使用对象的方法、为对象事件编写事件过程。程序设计时要做的工作就是决定应更改哪些属性、调用哪些方法、对哪些事件作出响应,从而得到希望的外观和行为。3.事件驱动模型在传统的或“过程化的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时调用过程。 在事件
16、驱动的应用程序中,代码不是按照预定的路径执行,而是在响应不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。因为事件的顺序是无法预测的,所以在代码中必须对执行时的“各种状态”作一定的假设。当作出某些假设时(例如,假设在运行来处理某一输入字段的过程之前,该输入字段必须包含确定的值),应该组织好应用程序的结构,以确保该假设始终有效(例如,在输入字段中有值之前禁止使用启动该处理过程的命令按钮)。在执行中代码也可以触发事件。例如,在程序
17、中改变文本框中的文本将引发文本框的 Change 事件。如果 Change 事件中包含有代码,则将导致该代码的执行。如果原来假设该事件仅能由用户的交互操作所触发,则可能会产生意料之外的结果。正因为这一原因,所以在设计应用程序时理解事件驱动模型并牢记在心是非常重要的.4。交互式开发传统的应用程序开发过程可以分为三个明显的步骤:编码、编译和测试代码。但是 Visual Basic 与传统的语言不同,它使用交互式方法开发应用程序,使三个步骤之间不再有明显的界限。 VB在编程者输入代码时便进行解释,即时捕获并突出显示大多数语法或拼写错误.看起来就象一位专家在监视代码的输入。 除即时捕获错误以外,VB
18、也在输入代码时部分地编译该代码.当准备运行和测试应用程序时,只需极短时间即可完成编译。如果编译器发现了错误,则将错误突出显示于代码中。这时可以更正错误并继续编译,而不需从头开始. 由于 VB的交互特性,代码运行的效果可以在开发时进行测试,而不必等到编译完成以后。14 利用VB开发应用程序的一般步骤一个VB程序也称为一个工程,由窗体、标准模块、自定义控件及应用所需的环境设置组成.开发步骤一般如下:1 创建程序的用户界面2 设置界面上各个对象的属性3 编写对象响应事件的程序代码4 保存工程5 测试应用程序,排除错误6 创建可执行程序2。1 VB用户界面设计基础1. 概述界面的设计有两步:先绘制控件
19、,然后确定控件属性。绘制控件:在工具箱里单击想画的控件,在窗体里按下鼠标并拖曳,然后松开鼠标即可.确定属性:先选中控件,然后按F4键或单击工具栏上的属性窗口进入属性(Properties)窗口,再在属性窗口中找到要设置的属性并进行设置。2。 常用属性的设置(1)Name属性对象都有名字,计算机把名字看成对象于对象之间的根本差异,因此在同一窗体里不许出现重名的情况(除非这是一个控件数组),且名字不得超过40个字。在简单的程序里,给控件命名不是很必要,完全可以使用控件Name属性的缺省值。例如Text1。但在有几十个控件的复杂窗体里,就很难区分它们.所以,VB推荐由三个小写字母的前缀和一个第一个字
20、母为大写的描述性单词组成的名字。例如cmdMyButton是一个命令按钮(前缀是cmd)(2)Caption属性Caption即标题,是可以在对象外观上直接看见的文本,可以长达255字符,包括空格和标点符号,比如一个叫cmdOk的命令钮,它的Caption属性就可以是“Ok。 注意:并不是所有的对象都有此属性,比如文本框、图片框、线条等就没有。 为按钮设置热键:在设置Caption属性时,在需要加下划线的字母前加上 “& 符号,例如 “File”,输出的就是“File”,这样就可以通过按ALT键和标题上那个带下划线的字母来选取它了, 不必为此编任何代码。Name和 caption的比较:1)
21、Name是系统用来识别对象的,编程时需要用它来指代各对象;Caption是给用户看的,提示用户该对象的作用;2) Name可以采用系统默认的名称,但Caption应该根据实际情况改成意义明了的名词;3)所有对象都有Name,但不一定都有Caption; (3)Top,Left属性这两个属性决定对象的位置。只有两种情况需要在属性窗口里设置这两个属性:第一种是用户没有鼠标,第二种是程序员需要十分精确地设定这两个值。当选中对象,单击并拖曳它的时候,便在修改这两个值了。(4)Height,Width属性这两个属性决定了对象的大小,当选中控件时,它周围出现八个小黑方块,把鼠标指向这些方块,鼠标指针将变成
22、一个双向的箭头,这时按下鼠标并拖曳它,即可改变控件的大小,也就改变了Height,Width属性.1.窗体的属性(1)设置属性的方法1)在设计态通过属性窗口设置 直接在属性窗口中选择或输入既可。2)在程序代码中改变属性值 代码中的格式为: 对象名 . 属性 = 属性值 例:Form1.BackColor=RGB(255,0,0)2.窗体的常用方法(1)Hide方法用以隐藏 MDIForm 或 Form 对象,但不能使其卸载。语法:object。Hide object 所在处代表一个对象表达式,其值为“应用于”列表中的一个对象.如果省略 object,则带有焦点的窗体就认为是该 object。说
23、明: 隐藏窗体时,它就从屏幕上被删除,并将其 Visible 属性设置为 False. 用户将无法访问隐藏窗体上的控件,但是对于运行中的 Visual Basic 应用程序,或对于通过 DDE 与该应用程序通讯的进程及对于 Timer 控件的事件,隐藏窗体的控件仍然是可用的。窗体被隐藏时,用户只有等到被隐藏窗体的事件过程的全部代码执行完后才能够与该应用程序交互.如果调用 Hide 方法时窗体还没有加载,那么 Hide 方法将加载该窗体但不显示它。(2)Move方法用以移动 MDIForm、Form 或控件。语法:object . Move left, top, width, height说明:
24、只有 left 参数是必须的。但是,要指定任何其它的参数,必须先指定出现在语法中该参数前面的全部参数。例如,如果不先指定 left 和 top 参数,则无法指定 width 参数。任何没有指定的尾部的参数则保持不变。(3)Print 方法在 Immediate 窗口中显示文本.语法:object . Print outputlist Print 方法的语法具有下列对象限定符和部分:部分描述Object必需的。对象表达式,其值为“应用于”列表中的对象。outputlist可选的。要打印的表达式或表达式的列表.如果省略,则打印一空白行.outputlist 参数具有以下语法和部分:Spc(n) T
25、ab(n) expression charpos说明:可以用空白或分号来分隔多个表达式。对系统指定的国别设置,用小数点分隔符将所有打印到 Immediate 视窗的数据正确格式化。关键字要用适用于主应用程序的语言输出。对于 Boolean 数据,或者打印 True 或者打印 False。根据主机应用程序的地区设置来翻译 True 和 False 关键字。使用系统能识别的标准短日期格式书写 Date 数据.当日期或时间部件丢失或为零时,只书写已提供的部件。如果 outputlist 数据是 Empty,则无内容可写。但是,如果 outputlist 数据是 Null,则输出 Null.在输出 N
26、ull 关键字时,要把关键字正确翻译出来。要把错误数据作为 Error errorcode 输出.在输出 Error 关键字时,要把关键字正确翻译出来。如果在具有缺省显示空间的模块外使用此方法,则需要 object。例如,如果没有指定对象就在标准模块上调用此方法,则将导致错误发生,但是,如果在窗体模块上进行调用,则会在窗体上显示“outputlist”。注意: 因为 Print 方法是按照字符比例进行打印,所以字符数与字符所占据的宽度固定的列的数目无关。例如,像 “W” 这样的宽字母占据的宽度超过一固定列宽,而像 i 这样的窄字母占据的宽度则较小.考虑到要使用比平均字符更宽的空间,表列一定要留
27、有足够余地。另外,也可以使用固定间距的字体(像 Courier 字体)来确保每一字符均只占一列。(4)PrintFrom方法用以将 Form 对象的图象逐位发送给打印机。 语法:object.PrintForm 说明:PrintForm 将打印 Form 对象的全部可见对象和位图。在绘制图形时,如果 AutoRedraw 属性为 True,则在运行时PrintForm 将打印 Form 对象或 PictureBox 控件上的图形。PrintForm 所使用的打印机是由操作系统的控制面板中的设置来决定。(5) Refresh方法强制全部重绘一个窗体或控件.语法:object.Refresh说明:
28、在下列情况下使用 Refresh 方法: 在另一个窗体被加载时显示一个窗体的全部。更新诸如 FileListBox 控件之类的文件系统列表框的内容。更新 Data 控件的数据结构。 Refresh 方法不能用于 MDI 窗体,但能用于 MDI 子窗体。不能在 Menu 或 Timer 控件上使用 Refresh 方法。通常,如果没有事件发生,窗体或控件的绘制是自动处理的。但是,有些情况下希望窗体或控件立即更新。例如,如果使用文件列表框、目录列表框或者驱动器列表框显示当前的目录结构状态,当目录结构发生变化时可以使用 Refresh 更新列表。可以在 Data 控件上使用 Refresh 方法来打
29、开或重新打开数据库(如果 DatabaseName, ReadOnly, Exclusive 或 Connect 属性的设置值发生改变),并能重建控件的 Recordset 属性内的 dynaset。(6)Show方法用以显示 MDIForm 或 Form 对象。语法:object。Show style, ownerform 说明:如果调用 Show 方法时指定的窗体没有装载,Visual Basic 将自动装载该窗体。当 Show 在显示无模式窗体时,随后遇到的代码则要执行。当 Show 在显示模式窗体 (modal form) 时,则随后的代码直到该窗体被隐藏或卸载时才能执行。当 Show
30、 在显示模式窗体时,除了模式窗体中的对象之外不能进行输入(键盘或鼠标单击)。对其它窗体进行输入前程序必须隐藏或卸载模式窗体(通常是处于响应用户某些操作状态).MDIForm 不能是形式的。在模式窗体显示时,虽然应用程序中的其它窗体失效,但其它应用程序不会失效。应用程序的启动窗体在其 Load 事件调用后会自动出现。下面的例子说明如何使用ownerform 参数:Private Sub cmdShowResults_Click() 显示模式窗体 frmResults。 frmResults.Show vbModal, MeEnd Sub(7)Cls方法清除运行时 Form 或 PictureBo
31、x 所生成的图形和文本。 语法:object.Cls说明:Cls 将清除图形和打印语句在运行时所产生的文本和图形,而设计时在 Form 中使用 Picture 属性设置的背景位图和放置的控件不受 Cls 影响。如果激活 Cls 之前 AutoRedraw 属性设置为 False, 调用时该属性设置为 True,则放置在 Form 或 PictureBox 中的图形和文本也不受影响。 这就是说,通过对正在处理的对象的 AutoRedraw 属性进行操作,可以保持 Form 或 PictureBox 中的图形和文本。调用 Cls 之后,object 的 CurrentX 和 CurrentY 属性
32、复位为 0.3.窗体的常用事件 (1) Load事件这个事件发生在窗体被装入内存时,且发生在窗体出现在屏幕之前。窗体出现之前,Visual Basic会看一看Load事件里有没有代码,如果有,那么它先执行这些代码,再让窗体出现在屏幕上。(2) Click事件,Dblclick事件这两个事件在单击或双击窗体时发生。不过单击窗体里的控件时,窗体的Click事件并不会发生,Visual Basic会去看控件的Click事件里有没有代码。(3)Activate (活动事件)与Deactivate(非活动事件) 显示多个窗体时,可以从一个窗体切换到另一个窗体。每次激活一个窗体时,发生Activate 事
33、件,而前一个窗体发生Deactivate事件。(4)Resize事件在窗体被改变大小时会触发此事件。4.窗体的控制(1) 装入或卸出窗体 要装入或卸出窗体,用Load或Unload语句。 装入窗体: Load formName 卸出窗体: UnLoad formNameFormName变量是要装入或卸出的窗体名。 Load语句只是把窗体装入内存,并不显示出来,要显示窗体可以使用窗体的Show方法.(2) 显示或隐藏窗体 要显示或隐藏窗体,用Show或Hide方法。若尚未装入内存则先装入再显示。 显示窗体: formName。show mode 隐藏窗体: formName。hide FormN
34、ame变量是窗体名,可选变元mode为0(缺省值)时窗体为非模态,为1时窗体为模态。模态窗体完全占有应用程序控制权,不允许切换到别的应用程序,除非关闭!而非模态窗体则反之。(3)END语句END语句的功能是终止应用程序的执行,并从内存卸在所有窗体。语法是: END1。窗体的属性(1)设置属性的方法1)在设计态通过属性窗口设置 直接在属性窗口中选择或输入既可.2)在程序代码中改变属性值 代码中的格式为: 对象名 . 属性 = 属性值 例:Form1。BackColor=RGB(255,0,0)2.窗体的常用方法(1)Hide方法用以隐藏 MDIForm 或 Form 对象,但不能使其卸载。语法:
35、object.Hide object 所在处代表一个对象表达式,其值为“应用于列表中的一个对象。如果省略 object,则带有焦点的窗体就认为是该 object.说明: 隐藏窗体时,它就从屏幕上被删除,并将其 Visible 属性设置为 False。 用户将无法访问隐藏窗体上的控件,但是对于运行中的 Visual Basic 应用程序,或对于通过 DDE 与该应用程序通讯的进程及对于 Timer 控件的事件,隐藏窗体的控件仍然是可用的。窗体被隐藏时,用户只有等到被隐藏窗体的事件过程的全部代码执行完后才能够与该应用程序交互.如果调用 Hide 方法时窗体还没有加载,那么 Hide 方法将加载该窗
36、体但不显示它。(2)Move方法用以移动 MDIForm、Form 或控件.语法:object . Move left, top, width, heightMove 方法的语法包含下列部分:说明:只有 left 参数是必须的。但是,要指定任何其它的参数,必须先指定出现在语法中该参数前面的全部参数。例如,如果不先指定 left 和 top 参数,则无法指定 width 参数。任何没有指定的尾部的参数则保持不变。(3)Print 方法在 Immediate 窗口中显示文本。语法:object 。 Print outputlist Print 方法的语法具有下列对象限定符和部分:outputlis
37、t 参数具有以下语法和部分:Spc(n) | Tab(n) expression charpos说明:可以用空白或分号来分隔多个表达式。对系统指定的国别设置,用小数点分隔符将所有打印到 Immediate 视窗的数据正确格式化。关键字要用适用于主应用程序的语言输出.对于 Boolean 数据,或者打印 True 或者打印 False。根据主机应用程序的地区设置来翻译 True 和 False 关键字。使用系统能识别的标准短日期格式书写 Date 数据。当日期或时间部件丢失或为零时,只书写已提供的部件.如果 outputlist 数据是 Empty,则无内容可写。但是,如果 outputlist
38、 数据是 Null,则输出 Null。在输出 Null 关键字时,要把关键字正确翻译出来.要把错误数据作为 Error errorcode 输出。在输出 Error 关键字时,要把关键字正确翻译出来。如果在具有缺省显示空间的模块外使用此方法,则需要 object。例如,如果没有指定对象就在标准模块上调用此方法,则将导致错误发生,但是,如果在窗体模块上进行调用,则会在窗体上显示“outputlist”。注意: 因为 Print 方法是按照字符比例进行打印,所以字符数与字符所占据的宽度固定的列的数目无关。例如,像 “W 这样的宽字母占据的宽度超过一固定列宽,而像 i” 这样的窄字母占据的宽度则较小
39、。考虑到要使用比平均字符更宽的空间,表列一定要留有足够余地。另外,也可以使用固定间距的字体(像 Courier 字体)来确保每一字符均只占一列。(4)PrintFrom方法用以将 Form 对象的图象逐位发送给打印机. 语法:object。PrintForm 说明:PrintForm 将打印 Form 对象的全部可见对象和位图。在绘制图形时,如果 AutoRedraw 属性为 True,则在运行时PrintForm 将打印 Form 对象或 PictureBox 控件上的图形。PrintForm 所使用的打印机是由操作系统的控制面板中的设置来决定。2。3 控件1.常用控件介绍(1)常用控件的属
40、性、方法和事件ComboBox 组合框(将列表框和文本框结合在一起)Style属性外观属性:取0时,系统创建一个带下拉式列表框的组合框;为1时,系统创建一个由文本框和列表框直接组合在一起的简单组合框,可以从列表框中选择,也可以直接在文本框中输入;为2时,系统创建一个没有文本框的下拉式列表框,单击列表框上的按钮才显示文本框,用户不能在文本框中输入,只能在列表框中选择。Text 属性其值为用户从列表框中选定的文本或直接输入的文本.AddItem方法添加列表项,使用格式: 对象名. AddItem列表项文本,插入位置序号若不指定位置,则插入到列表末尾。Clear方法删除列表所有项目RemoveIte
41、m 方法删除列表项,使用格式: 对象名 。 RemoveItem 删除项序号CommandButton 命令按钮Cancel属性取消属性,它为True时, 按ESC即等于单击此按钮。Default属性缺省属性,它为True时, 按回车键即等于单击此按钮.Timer计时器Interval属性两次调用Timer事件的事件间隔,用于创建动态效果。Frame 框架CheckBox 复选框OptionButton选项按钮Alignment属性决定它们的对齐方式,0=左对齐,1=右对齐.Value属性决定它们是否被选中的属性2.常用控件的使用辨析 (1)文本框和标签的区别: 文本框通常用于向计算机输入信息
42、,而标签通常用于输出信息。文本框是一个十分重要的控件,因为由复选框和选项按钮向程序输入的信息毕竟只有少数的几条信息而已。标签和文本框的区别很小,标签可以看成是一个在运行时不能修改正文的文本框,因此标签主要用于输出信息。 (2) Label的AutoSize属性和WordWrap属性为了使标签具有垂直伸展和字换行处理,必须设置它的AutoSize属性和WordWrap属性同时为True。AutoSize属性为False,WordWrap属性为False时,若标签不够高而Caption太长时,Caption将被切割掉.AutoSize属性为False,WordWrap属性为True时,情况也如此。
43、AutoSize属性为True,WordWrap属性为False时,表示可以水平伸展,但只显示一行信息.(3) PictureBox和Image的Stretch属性和AutoSize属性Image只有Stretch属性,而PictureBox只有AutoSize属性。AutoSize属性设为True,则PictureBox改变自己的大小来适应其中的图形.Stretch属性设为True,则Image中的图形将改变自己的大小来适应外面的边框。(4)Frame 框架、CheckBox 复选框、OptionButton选项按钮的区别:复选框和选项按钮用于向程序输入信息, 框架用来对复选框和选项按钮进行
44、分组。复选框选中时会在小方框里打一个钩,选项按钮选中时会在小圆圈里点一个点。2.4 定制菜单1菜单概述Windows中的菜单一般由菜单条、菜单、菜单项、子菜单、弹出式菜单组成。2普通菜单的设计(1)给菜单命名菜单标题和菜单命令也有Caption和Name属性,设置了这两个属性就等于创建了菜单。Name是一个抽象名称,Caption是屏幕上可见的,可在Caption里加入 “&” 来设置热键.(2)增加和删除菜单在Menu Editor中部有三个命令钮分别是下一个、插入、删除。插入可用来增加新的菜单。在这三个键下面的Caption列表框里选中菜单项(这时它的底色就变成深蓝色),单击插入键,Visua