1 / 161

《 大学信息技术导论 》 第 6 章

《 大学信息技术导论 》 第 6 章. 2004 年 8 月. 6.1 VB 的集成开发环境. Microsoft 于 1991 年推出 Visual Basic 语言(简称 VB ) —— 可视化语言,是以 Basic 语言为基础,以事件驱动为运行机制的新一代可视化程序设计语言。. 6.1.1 VB 的概述.

inga
Download Presentation

《 大学信息技术导论 》 第 6 章

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 《大学信息技术导论》第6章 2004年8月

  2. 6.1 VB的集成开发环境 Microsoft 于1991年推出 Visual Basic语言(简称VB)——可视化语言,是以Basic语言为基础,以事件驱动为运行机制的新一代可视化程序设计语言。

  3. 6.1.1 VB的概述 Visual Basic的推出使程序人员能在Windows平台上进行有效的开发工作。使用VB使编程工作方便快捷了许多。任何一个有初步程序设计基础的人,都能够在很短的时间内掌握VB编程,并用它编写出各种Windows应用程序。与传统的语言相比,它在许多方面有重要的改革和突破。 1.Visual Basic提供可视化的编程工具 2. 程序采取“事件驱动”方式

  4. 6.1.1 VB的概述 用传统的高级语言编程序,主要工作是设计算法和编写程序。程序的各种功能和显示的结果都要由程序语句来实现。而用VB开发应用程序,包括两部分工作:一是设计用户界面;二是编写程序代码。所谓用户界面设计,就是要设想准备让用户看到什么。VB向程序设计人员提供图形对象(窗体、控件、菜单等)进行应用程序的界面设计。VB提供一个“工具箱”,内放若干个“控件”。程序设计者可以自由地从工具箱中取出所需控件,放到窗体中的指定位置,而不必为此编写程序。

  5. 6.1.1 VB的概述 传统的编程方法是:根据程序应实现的功能,写出一个完整的程序(包括一个主程序和若干个子程序)。在执行时,从第一个语句开始,直到结束语句为止。在执行过程中,除了需要用户输入数据时暂停外,程序开始运行后不停顿地按程序中指定的顺序执行各指令,直到程序结束。因此程序设计者必须十分周到地考虑到程序运行中的每一个细节:什么时候应发生什么事情,什么时候屏幕上应出现什么。因此对编写应用程序的程序人员提出了较高的要求。 VB改变了程序的机制,没有传统意义上的主程序,使程序执行的基本方法是由“事件”来驱动子程序(在VB中子程序被称为“过程”)的运行。大大降低了程序人员编程的难度。

  6. 6.1.2 VB的集成开发环境(图6.1)

  7. 6.1.2 VB的集成开发环境(图6.2) VB工具栏

  8. 6.1.2 VB的集成开发环境(表6.1)

  9. 6.1.3 简单程序设计 【例6.1】编写一个VB程序,程序运行后输入圆的半径,计算输出圆的周长和面积。 分析:界面设计应该让用户输入圆的半径,程序接收到用户输入的信息后,按照公式:圆周长=2×π×r 、圆面积=π×r2来计算圆周长和面积,并输出计算结果。 设计步骤:启动VB,新建或打开一个工程文件,在默认打开的工程中,系统自动提供一个名为Form1的窗体 。

  10. 6.1.3 简单程序设计 1.窗体设计 (1)添加图形控件 首先在窗体上添加图形控件。单击工具箱中的控件,然后在窗体的适当位置画出控件。图中分别在名称为Form1的窗体上画出了三类7个控件,它们分别是标签Label1、Label2、Label3;文本框Text1、Text2、Text3;命令按钮Command1。

  11. 6.1.3 简单程序设计 (2)属性设置 单击控件对象,在属性窗口中找到需要设置的属性,修改属性值(表6.2)。

  12. 6.1.3 简单程序设计 2.代码设计(参见图6.4)

  13. 6.1.3 简单程序设计 3.保存程序 保存窗体文件时,从菜单栏中选择“文件”菜单中的“Form 另存为”命令选项,系统提供一个供你选用的窗体文件名(如Form1),可以输入自已指定的文件名,然后用鼠标单击“保存”按钮,这时,窗体文件被保存(窗体文件的后缀是.frm),同时关闭对话框。 一个VB的工程可以包含多个窗体,还需要保存一个工程文件。选择“文件”菜单中的“工程另存为”命令选项,输入工程文件名,单击“保存”按钮即可。工程文件的后缀为.vbp。 如果要想使应用程序不在VB环境中运行,就必须对应用程序进行编译,生成 .exe文件。具体作法如下: 从菜单栏中选择“文件”菜单,可以看到有“生成工程1.exe”的菜单命令,选择后出现一个对话框,从键盘上输入想要的文件名,然后单击“确定”键,关闭对话框,便会生成“.exe”的文件。

  14. 6.2 对象的建立、编辑及属性、事件与方法 6.2.1 对象的建立和编辑 1.窗体对象 2. 创建控件对象 3. 对象的编辑 6.2.2 对象的属性、事件和方法 1.对象的属性(Property) 2.对象属性设置 3. “名称”属性 4. 事件(Event) 5. 方法(Method)

  15. 6.2.1 对象的建立、编辑 窗体是Visual Basic 应用程序的基本构造模块,是运行应用程序时,用户进行交互操作的窗口或对话框。其固有成分是:图标、标题栏、控制菜单、控制按钮和工作区。 在工具箱中,每一个图标就代表了一个控件(Control)。这些控件就是一种“对象”。被称为对象的还有窗体,也就是说在VB中,对象(Object)是窗体、控件以及菜单的总称。这些对象称为预定义对象;

  16. 6.2.1 对象的建立、编辑 VB系统中的Twip坐标系: VB系统中缺省的度量单位是twip,它是独立于象素的绘制点,1英寸约等于1440个twip。在窗体坐标中,窗体的左上角(标题栏的下方)是窗体坐标原点。位于VB窗体内的每一控件都是矩形,矩形的左上角为控件的坐标原点,它们的twip坐标位置和窗体的个性是通过其属性体现的,可以在设计时通过“属性窗口”设置,也可以在运行时由代码来实现。

  17. 6.2.1 对象的建立、编辑 如何将工具箱中的控件添加到窗体上呢?可以通过以下两种方法添加命令按钮: (1) 把鼠标指针移到工具箱中的控件图标上,按下鼠标左键(被单击后的控件改变为灰白色),然后放开鼠标左键将光标移到窗体上,这时光标由箭头变成“十”字。将“十”字移到你所希望的位置,按住鼠标左键拖拉成你想要的尺寸,然后释放鼠标,一个控件就被添加到窗体上了。 (2) 在工具箱中双击控件图标后,一个控件的图形就自动加到窗体的中心位置上了。如果要将此控件移动到所需的位置,只要将控件拖放到指定位置即可。控件被添加到窗体上称为引用对象。

  18. 6.2.1 对象的建立、编辑 “窗体格式编辑器”可以将窗体上添加的控件进行快速编辑,也可以通过主菜单“格式”菜单命令进行编辑(见图6.6)。 (1)选择对象:按住Shift键(或Ctrl键),单击要选定的对象;鼠标拖动方式:鼠标单击窗体的空白处,在窗体上拖出矩形框,框中包含或覆盖的对象将被选中。 (2)调整设置:对被选定的对象可进行位置、高、宽以及公共属性的快速调整和设置。

  19. 6.2.2 对象的属性、事件和方法 1、对象的属性(Property) 在VB编程中,每一种对象都有一组特定的属性。有许多属性可能为大多数对象所共有,如BackColor属性定义对象的背景色。还有一些属性仅局限于个别对象,如只有命令按钮才有Cancel属性,该属性用来确定命令按钮是否为窗体默认的取消按钮。每一个对象属性都有一个默认值,如果不明确地改变该属性值,程序就将使用它的默认值。通过修改对象的属性能够控制对象的外观和操作。

  20. 6.2.2 对象的属性、事件和方法 窗体的常用属性见表6.3 Left——窗体属性表示窗体原点在屏幕中的X坐标;控件属性表示控件原点在窗体 中的X坐标。 Top ——窗体属性表示窗体原点在屏幕中的Y坐标;控件属性表示控件原点在窗体 中的Y坐标。 Width——表示对象的宽,也是对象自坐标系中坐标的最右边界(X轴的长度)。 Height——表示对象的高,也是对象自坐标系中坐标的最底边界(Y轴的长度). Appearance——设置对象是否以3D效果显示,应用与标签、文本框等大部分显示 控件。 BackColor——设置对象的背景颜色,主要用于窗体、图片框及图像框. Caption——设置窗体标题栏的标题;用于Label标签、Command命令按钮、Frame 框架。 FillColor——设置窗体、图片框的颜色填充。 Picture——设置窗体、图片框、图像框、命令按钮的图形。 BorderStyle——设置窗体风格,如对话框、工具窗口等。有6种类型。 MaxButton;MinButton——当BorderStyle的值为Sizable时(缺省的),窗体最 大化和最小化属性设置才有效;当最大化与最小化值为False时,最大与 最小按钮消失。 Visible——设置对象是否可见,应用于绝大多数控件。 (名称)——设置对象引用的名称标识,应用于所有对象。仅在属性窗口设置.

  21. 6.2.2 对象的属性、事件和方法 2、对象属性设置 (1) 选定对象,然后在属性窗口中找到相应属性直接设置。这种方法的特点是简单明了,每当选择一个属性时,在属性窗口下部就显示该属性的一个简短提示,其缺点是不能设置所有所需的属性。 (2) 在代码中通过编程设置,格式为: 对象名.属性名=属性值 在程序中设置属性时,应指明是哪一个对象的属性。在程序中设置或引用一个属性时,一般要在其前面加上对象名(如Command1.Caption指命令按钮Command1的Caption属性)。

  22. 6.2.2 对象的属性、事件和方法 • 2、对象属性设置 • 为了在属性窗口中设置对象的属性,必须先选择要设置属性的对象,在激活的属性窗口中就显示当前所选对象的属性。属性不同,设置新属性的方式也不一样。通常有以下三种方式。 • ① 直接键入新属性值。 • ② 通过下拉列表选择需要的属性值。 • ③ 利用对话框设置属性值。

  23. 6.2.2 对象的属性、事件和方法 3.“名称”属性 VB中的对象都有一个唯一的名字—名称属性,它是图形对象的一个重要属性,是程序代码中对象引用的标识符号。创建对象时系统自动为每个对象一个缺省的名称,此名称与对象的Caption或Text的缺省内容相同,但它们不是一回事。如新添加的第一个命令按钮Command的Caption为“Command1”,Command对象的默认名称也是“Command1”。对象的名称在程序运行时是不能更改的。编程人员可以根据需要将缺省名称改为自已容易理解的名称,命名规则同变量的命名规则。为了帮助程序员们阅读或编写程序,Microsoft建议使用约定的命名前缀,有变量前缀、变量作用域前缀、对象前缀等(见表6.4)。

  24. 6.2.2 对象的属性、事件和方法 4. 事件(Event) 在VB中,预定义对象的事件也是预先定义好的、能够被对象识别的动作,如Click(单击)、DblCIick(双击)、Load(装载)、MouseMove(移动鼠标)等。不同的对象能够识别不同的事件。当事件由用户触发(如Click)或由系统触发(如Load)时,对象就会对该事件做出响应。例如,例6.1中单击“计算”命令按钮,程序响应命令按钮的Click事件。响应某个事件后所执行的操作通过一段程序代码来实现,这样的代码叫做事件过程。一个对象可以识别一个或多个事件,因此可以便用一个或多个事件过程对用户或系统的事件做出响应。虽然一个对象可以拥有许多事件过程,但在程序中能使用多少事件过程,则要由设计者根据程序的具体要求来确定。

  25. 6.2.2 对象的属性、事件和方法 (1) 窗体常用的事件 Click 、DblClick事件 当在一个可视化对象上单击鼠标或按Enter键时,就会发生该对象的Click事件,而如果在该对象上双击 鼠标按钮,则将会发生该对象的DblClick事件。 MouseDown、MouseUp 、MouseMove事件 对鼠标操作的响应。其中: MouseDown 是按下鼠标键时发生的; MouseUp 事件是松开鼠标键时发生的; MouseMove 事件是鼠标指针移动到新的位置时发生的。

  26. 6.2.2 对象的属性、事件和方法 Load事件 Load(装入)事件是窗体所能响应的一个基本事件,只要启动应用程序,窗体被装入内存,就会触发Load事件,并执行窗体的Form_Load事件过程。Load事件过程通常用来对属性和变量进行初始化。如果窗体模块中还存在其他事件过程,则VB将暂停程序的执行,并等待触发下一个事件过程。如果Form_Load事件过程内不存在任何指令,则系统将显示该窗体。 Unload事件 当窗体被卸载时发生的事件。如执行“关闭命令”、Alt+F4或者Unload语句等操作或命令,就会触发此事件。 Activate与Deactivate事件 当窗体变为活动窗口时触发Activate事件,而在另一个窗体变为活动窗口前触发本窗体的Deactivate事件,并执行窗体的Form_Activate或Form_Deactivate事件过程。

  27. 6.2.2 对象的属性、事件和方法 Paint(绘画)事件 当窗体被移动或放大时,或者窗口移动覆盖了一个窗体时,触发该事件,并执行窗体的 From_Paint事件过程。与窗体的基本事件Load类似的一个有用的函数是LoadPicture函数,它将指定的图形文件调入内存。LoadPicture的一般格式为: [对象.]Picture = LoadPicture("文件名") 注意:语句格式中若出现方括弧“[ ]”,则表示其中内容可以省略,该项省略时系统取缺省值。 语句格式中的“对象”指窗体、图片框、图像框等,缺省时为窗体。圆括号中双引号里的内容是图形文件名,一般应写出完整路径。例如:Form1.Picture=LoadPicture ("C:\Pictures\blue hills.gif")的作用是将文件夹C:\Pictures\下的图形文件“blue hills.gif”调入内存,并将此值赋给Picture属性。如果不指定对象名(缺省)就是指当前窗体,所以这里的Form1.Picture与Picture是等价的。

  28. 6.2.2 对象的属性、事件和方法 • (2)事件过趁程的编写 • ① 进入代码窗口的三种方法: • 双击当前窗体(双击一个控件也可以进入代码窗口对应的控件事件中)。 • 单击“工程资源管理器”窗口的“查看代码”按钮,打开活动窗体的代码窗口。 • 在菜单栏中选择“视图”菜单中的第一个命令“代码窗口”(图6.7)。

  29. 6.2.2 对象的属性、事件和方法 • VB6.0代码编辑器具有自动显示对象的属性/方法及函数参数信息的“智能感知”特性。如在输入代码过程中,键入对象名称后紧跟着键入“.”或函数名后键入“(”,会自动激活此对象的“属性/方法”列表框或函数的“参数信息”列表框,按空格键自动选择输入列表的首项内容。通过“编辑”菜单中 “属性/方法列表 Ctrl+J、常数列表Ctrl+Shift+J、快速信息 Ctrl+I 、参数信息 Ctrl+Shift+I”等命令,在编辑时查看相关信息。 • ② 代码窗口切换到窗体对象窗口 • 单击“工程资源管理器”窗口的“查看对象”按钮。 • 在菜单栏中选择“视图”菜单中的第二个命令“对 象窗口 Shift+F7”。

  30. 6.2.2 对象的属性、事件和方法 • 5.方法(Method) • VB的方法与事件过程类似,它可能是函数,也可能是过程(实际上,它是一种特殊的过程和函数)。它用于完成某种特定功能而不能响应某个事件,如Print(打印对象)、Show(显示窗体)、Move(移动)方法等。每个方法完成某种功能,用户无法看到其实现的步骤和细节,更不能修改,用户能做的工作只是按照约定直接调用它们。调用“方法”的形式与调用一般的过程或函数不同,应该指明是哪个对象调用自己所拥有的方法。其调用格式为: • 对象名.方法名

  31. 6.2.2 对象的属性、事件和方法 窗体的常用方法有: ① Show方法 如果想要窗体画面在程序运行时立刻显示,或是遇到大型程序的整个Load过程需耗费不少时间的情况,可以使用Show方法。一般情况,调用Show方法与Hide方法配合使用,也与设置窗体Visible属性为True具有相同的效果。 语法格式为:窗体名.Show[style, ownerform] 其中:可选参数style为0或者1,分别表示非模态的(缺省)或模态的(如对话框窗口若为模态的,打开某个应用程序的对话框后,不能在此应用程序中执行其他操作);ownerform为“字符串表达式”,通常为窗体对象,说明Show方法显示的窗体是哪个组件所拥有的。此参数一般省略,标准参数形式为“Me”。

  32. 6.2.2 对象的属性、事件和方法 ② Hide方法 如果用户希望从屏幕中去除一个窗体,而在内存中保留它,以便仍能使用,应该使用此方法: Form.Hide 或者Me.Hide,与Form.Visible效果相同;如果用户完成了窗体任务,要从内存中释放正在使用的窗体,可通过UnlOad语句来卸载窗体,即从内存清除,不再保留。 语句格式为:Unload 窗体名 如果用户要再次使用该窗体,可以使用Show方法或Load语句重载。 语句格式为:Load 窗体名

  33. 6.2.2 对象的属性、事件和方法 ③ 其它方法 移动窗体:Form.Move(Left,[Top],[Width],[Height])。 清除窗体上显示的文字或画出的图形:Form.Cls。 输出文字或表达式的值:Form.Print [输出表列]。 绘图方法:Form.Point、Form.Pset、Form.Line、 Form.Circle等。 上述几种方法也适应于如Picture图片框对象。

  34. 6.3 VB程序设计语言的语法 数据类型 常量、变量、基本语句 运算符和表达式 基本控制结构 常用内部函数 数组 自定义过程

  35. 6.3.1数据类型 1、基本数据类型 VB常用的数据类型有字符串、数值、货币、日期、变体、字节、布尔及对象等。 普通整型(Integer) 整数型 长整型(Long) 数值类型 单精度浮点型(Single) 浮点型 双精度浮点型(Double)

  36. 6.3.1数据类型 Visual Basic 支持几种数值数据类型: Integer(整型)、Long(长整型)、Single(单精度浮点型)、Double(双精度浮点型)、Currency(货币型),另外,Byte(字 节型)也可用于数值计算, 所有数值变量都可相互赋值。 String型 String型变量用于存储字符串,在缺省情况下,String 型变量是一个可变长度的字符串变量,随着对其赋予新数据,它的长度可增可减。如下列语句: Dim S As String S = “欢迎您学习Visual Basic 程序设计语言" 但也可以声明具有固定长度String 型变量,语法是: Dim/ Private/ Public/ Static variant String*size

  37. 6.3.1数据类型 Date 数据类型 用于存储Date 和 Time 值,Visual Basic 接受许多种文字的 Date 和 Time 格式。例如: Dim SomeDate As Date SomeDate = #1980-03-16# SomeDate = #3-6-93 13:20# SomeDate = #March 27 , 1993 1:20am# Boolean 数据类型 若变量的值只是“true/false”、“yes/no”、“on/off”信息,则可将它声明为 Boolean 类型(仅有True和False两个值)。Boolean型变量的缺省值为 False。

  38. 6.3.1数据类型 Object 数据类型 Object 变量采用 32 位(4 个字节)地址来存储对象,该地址可引用应用程序中或某些其他应用程序中的对象。可以随后(用 Set 语句)指定一个被声明为 Object 的变量去引用应用程序所识别的任何实际对象,如: Dim objDb As Object Set objDb = OpenDatabase ("c:\Vb5\Biblio.mdb")

  39. 6.3.1数据类型 2、自定义数据类型 在模块的声明部分可以使用Type语句建立自定义数据类型。它的一般形式为: [Public|Private] Type <类型名称> <元素名> As <类型> <元素名> As <类型> <元素名> As <类型> …… End Type

  40. 6.3.1数据类型 例如,自定义类型:通信录 Type Telephone Sequence As Integer '定义整型变量存储顺序号 Name As String*l0 '定义字符串变量Name,长度为10 Tel AS String*15 '定义字符串变量存储电话号码 Address As String*40 '定义字符串变量存储地址 End Type

  41. 6.3.1数据类型 3. 枚举类型 “枚举”就是指将变量的值一一列举出来,变量的值只限于所列举出来的值的范围。枚举类型也是用户自定义类型的另一种形式。枚举类型通过Enum语句来定义,格式如下: [Public|Private] Enum 类型名称 成员名[=常数表达式] 成员名[=常数表达式] …… End Enum 说明:Public和Private是可选的,在默认时为Public。成员名用来指定所定义的Enum类型组成元素的名称。所有的赋值表达式都可以省略。在默认情况下,枚举中的第一个常数被初始化为0,其后的常数则初始化为比其前面的常数大1的数值。常数的数值是Long类型,也可以是其他Enum类型。

  42. 6.3.1数据类型 • 例: 用枚举类型来定义花名册中的性别。 • Public Enum Sexuality • Male • Woman • End Enum • 有时成员的值从0开始不合理,如下面定义的一个枚举类型来处理星期几的问题,就必须从1开始: • Public Enum Week • Monday = l • Tuesday Wednesday Thursday • Friday Saturday Sunday • End Enum

  43. 6.3.2 VB中的常量与变量 1. VB中的常量 (1)字符串常量 字符串常量由零个或多个字符组成,可以是除双引号和回车符之外的任何ASCII字符,其长度不能超过(216-1)个字符(65535个字符,定长字符串)或231个字符(2147483648个字符,变长字符串)。例如: "33355.00" "计算机的学习与应用" (2)符号常量 符号常量通常在源程序开始部分定义,用标识符来代替数值或字符串。定义格式如下: Const 常量名 [As 数据类型] =表达式 [,常量名 [As 数据类型] =表达式]… 如我们要用PI代替圆周率,并要有22位有效数,可定义: Const PI As Double = 3.1415926535897932384626

  44. 6.3.2 VB中的常量与变量 (3)整型常量 整型常量有十进制、十六进制(&H)和八进制(&O)三种表现形式。 (4)浮点数常量 浮点数由尾数、指数符号和指数三部分组成。其中,尾数本身也是一个浮点数,指数符号为 “E”或 “e”(单精度)、“D”或“d”(双精度),指数必须是整数。其指数符号的含义为“乘以10的n次幂”。例如,在“4.35E-8和6.243D4”中,4.35和6.243是尾数,E和D是指数符号,它们分别表示4.35乘以10的-8次幂(4.35×10-8)和6.243乘以10的4次幂(6.243×104)。 (5)逻辑常量 VB中的逻辑常量有True和False,分别表示逻辑真和逻辑假,对应的十进制数分别是-1和0。

  45. 6.3.2 VB中的常量与变量 2. VB中的变量 (1)变量的命名 在VB中,变量的命名除了遵照变量的命名规则以外,一个变量名的字符数目不得超过255个,对象名称的字符数目不超过40个。VB系统不区分变量名中字母的大小写,如TEL,Tel及tel指的是同一个变量名。在VB中,过程名、符号常量名、记录类型名及元素名的命名规则与变量名的命名规则相同。 (2)变量的显式声明(或称定义) 一个变量被命名之后,就要通过变量的声明来说明该变量的储存方式,以便系统将其存储到计算机的内存中去。在VB中,变量的声明可以用专用语句公开(显式)声明,也可采用默认方式(隐式)声明。用语句声明又可分为以下几种方式: ① 用Dim关键字声明变量 Dim关键字(又称为保留字,在语法上有着固定的含义,是语言的组成部分)用来在标准模块、窗体模块或过程中声明变量。Dim声明变量的格式为: Dim 变量名 AS 数据类型

  46. 6.3.2 VB中的常量与变量 一条Dim语句可以同时声明多个变量,但每个变量都必须有自已独立的数据类型声明。例如: Dim A As Integer, B As String ② 用Static关键字声明变量 Static用来在过程中声明静态变量。声明变量格式为: Static 变量名 As 数据类型 它与Dim语句声明的变量不同之处在于:一个过程结束时,过程中用Static声明的变量值会保留下来,下次再调用此过程时,变量的初值是上次调用该过程结束时被保留的值;而用Dim语句声明的变量在过程结束时,值不会被保留,每次调用时都会被重新初始化。 ③ 用Public关键字声明变量 Public用来在标准模块中声明全局变量,即工程中的所有模块都可以对其进行引用。如果一个过程或函数使它的值发生了变化,则使用它的其他过程或函数也会受到相应影响。Public 语句声明变量的格式为: Public 变量名 As 数据类型

  47. 6.3.2 VB中的常量与变量 (3) 变量的默认声明 在VB中,使用变量不要求对变量都事先声明,不加声明的变量系统默认为变体(Variant)类型。也可使用类型声明符(%,&,!,#,$及@)来隐含(默认)声明变量的数据类型。例如,Dim A% 声明一个整型变量,Dim B$ 声明一个字符型变量。在程序中不经声明而使用变量,称为变量的默认(隐式)声明。默认声明一般只适用于局部变量,模块级变量和全局变量必须在代码窗口中用Dim或Public语句显式声明。变量的默认声明将使得所编写的程序阅读和理解起来更为困难。为了使程序具有较好的可读性及利于程序的调试,建议应尽量避免变量的默认声明。 (4) 变量的作用域 变量的作用域是指变量的有效范围。在VB中,根据变量的有效范围的不同,可将变量分为局部变量、窗体模块级变量和标准模块级变量。

  48. 6.3.2 VB中的常量与变量 • ① 局部变量 在一个过程内部定义的变量称为局部变量。这个变量只能在定义它的过程内使用。窗体中不同过程中定义的局部变量可以同名,因为它们是互相独立的、互不干扰的。 • ② 窗体模块级变量 窗体模块即窗体代码窗口中的全部代码的总称,是由声明部分、通用过程和事件过程等几部分组成。窗体模块级变量在整个模块中有效,即其作用域为整个窗体模块。操作方法是在窗体模块中“通用”的声明部分声明该变量。进入模块的声明部分步骤如下: • 首先要进入代码编辑窗口。 • 打开代码编辑窗口的“对象列表框”,选择“通用”项,再打开代码编辑窗口 右上侧“过程列表框”选择其中的“声明”选项。 • 最后在代码编写处,用变量声明语句定义变量。 • ③ 标准模块级变量——全局变量 在标准模块代码窗口的,用Public或Global(全体)语句定义在标准模块的首部的变量,可以被程序中任何一个模块和窗体引用,即为全局变量,标准模块中的全局变量声明总是在启动时执行 。

  49. 6.3.2 VB中的常量与变量 要建立一个定义全局变量的模块,可以通过执行 “工程”菜单中“添加模块”命令添加标准模块,添加的第一个模块的缺省名为“Module1”。如图6.8中定义了4个全局变量。   标准模块由全局变量、模块级变量和通用过程组成,其中模块级变量是由“Private”关键字声明的。在编辑完代码之后,可以用“文件”菜单中的“保存文件”命令独立存盘,其扩展名为“.bas”。 图6.8 标准模块代码窗口

  50. 6.3.3 基本语句 1.赋值语句   用赋值语句可以把指定的值赋给某个变量或某个带有属性的对象。也称Let语句。 [Let]  目标操作符=源操作符 “源操作符”包括变量、表达式、常量及对象的属性。“目标操作符”指的是变量和带有属性的对象。“=”称为“赋值号”,如:A=A+1和B=1在VB中都是合法的赋值语句,而A+1=B或1=B都是错误的赋值语句。“目标操作符”和“源操作符”的数据类型必须一致。如果不一致,则需要使用类型转换函数进行转换(当“源操作符”为Variant类型变量时例外)。当两边的数据同为数值类型但精度不同时,系统会强制的将“源操作符”的数值精度转换为“目标操作符”的精度。

More Related