首页 理论教育测量平差程序设计:模块和层次结构

测量平差程序设计:模块和层次结构

【摘要】:图1.1VB应用程序的组织结构1.窗体模块窗体模块包含窗体及其控件的属性设置、事件过程、窗体内自定义过程的窗体级声明等。标准模块是VB程序中的一个独立模块,包含模块级或全局变量声明、函数过程和通用过程,标准模块的文件扩展名为.bas。标准模块中除包含允许其它模块访问的过程,还包括变量、常量、数据类型、自定义过程的全局或模块级声明。

Visual Basic中的程序代码存储在模块中,模块是相对独立的程序单元。VB系统提供的模块包括窗体模块、标准模块、类模块。三种模块都可以包含声明和过程,它们形成了如图1.1所示工程的模块层次结构。

图1.1 VB应用程序的组织结构

1.窗体模块

窗体模块包含窗体及其控件的属性设置、事件过程(代码部分)、窗体内自定义过程的窗体级声明等。每个窗体对应一个窗体模块,其文件扩展名为.frm。

一个VB应用程序至少应包含一个窗体模块。每个窗体模块包含菜单、命令按钮等控件。每个控件都有一个对应的事件过程,事件过程中有响应该事件执行的程序段。除了事件过程,窗体模块还可包含通用过程、函数过程,这些过程对来自该窗体中任何事件过程、通用过程或函数过程的调用指令作出响应。

2.标准模块

简单的应用程序可以只有一个窗体,所用的程序都驻留在窗体模块中,而当应用程序比较复杂时,往往会采用多个窗体。复杂多窗口应用程序可能存在几个窗体模块共同执行的代码,为了在各窗体中不产生重复代码,VB系统提供一种独立的模块,用于保存公用程序代码,该独立模块就称为标准模块。

标准模块是VB程序中的一个独立模块,包含模块级或全局变量声明、函数过程和通用过程,标准模块的文件扩展名为.bas。一个应用程序可以没有标准模块,也可以包含多个标准模块。

为了提高开发效率,通常将那些与特定窗体或控件无关的代码放入标准模块,写入标准模块的代码不与特定应用程序绑定。标准模块中除包含允许其它模块访问的过程,还包括变量、常量、数据类型、自定义过程的全局或模块级声明。

(1)使用标准模块。

在缺省状态下,变量对于过程是局部的,即仅能在创建这些变量的过程中读取或者修改。与之相似,过程对于创建它们的窗体来说也是局部的。为了在工程中的所有窗体中共享变量和过程,需要在该工程的一个或多个标准模块中对它们进行声明和定义。(www.chuimin.cn)

正如窗体一样,标准模块被单独列在Project(工程)窗口内,并可通过使用File(文件)菜单中的“Save Module As”菜单项存盘。与窗体模块不同的是,标准模块不包含对象及其属性设置,而只包含可在代码窗口中显示和编辑的代码。

(2)创建标准模块。

在工程中创建一个空的标准模块的步骤如下:

①启动VB打开一个新的标准工程,单击工程菜单中的“添加模块”菜单项,选择“新建”并单击“打开”按钮。执行上述操作后,VB即在工程中增加一个默认名为“Module1”的标准模块,并且模块代码窗口被自动打开,可在窗口中编辑修改程序代码。

②在“文件”菜单中,单击“保存Module1”。

3.类模块

类模块是面向对象编程的基础,VB 系统允许通过在类模块中编写代码建立新对象,这些新对象可以包含自定义的属性和方法。每个类模块只能定义一个对象。类模块定义的对象不可视,应用需要通过声明对象型变量的方法。

类模块与标准模块的区别在于:标准模块仅包含代码,而类模块既含代码又含数据,类模块可视为没有物理表示的对象。

VB中对象是用类定义的,工具箱上每个控件都是一个类,但在窗体上引用一个控件之前,以该控件命名的对象是不存在的。具体的、可以引用的对象实际上是类的一个拷贝或实例。

类与过程有共同之处,但有本质的区别:过程是将逻辑上有关的语句与数据集合在一起,主要用于执行;而类则是逻辑上有关的过程及其数据的集合,主要不是用于执行而是提供所需的资源。