一个应用程序实际上无非是指挥计算机完成任务的指令集。应用程序的结构是组织指令的方法,也就是指令存放的位置和指令的执行顺序。
典型的 "hello world" 例子以及诸如此类的简单应用程序都具有简单结构。对于只有一行的代码来说,组织结构并不十分重要。但应用程序越复杂,对组织或结构的要求也就越明显。试想一下,如果允许应用程序以随机顺序去执行,那将会带来什么样的混乱。除了对应用程序的执行进行控制外,如何在应用程序中轻松查找特定指令,结构也起着很重要的作用。
由于 Visual Basic 应用程序是基于对象的,所以应用程序的代码结构就是该程序在屏幕上物理表示的模型。根据定义,对象包含数据和代码。在屏幕上看到的窗体代表属性,这些属性定义了窗体的外观和内在特性。应用程序中的每个窗体都有一个包含其代码的相关的窗体模块(文件扩展名为 .FRM)。
图 5.1 窗体及相关的窗体模块
每个窗体模块都包含事件过程,即代码部分,其中有为响应特定事件而执行的指令。窗体可包含控件。在窗体模块中,对窗体上的每个控件都有一个对应的事件过程集。除了事件过程,窗体模块还可包含通用过程,它对来自任何事件过程的调用都作出响应。
可将那些与特定窗体或控件无关的代码放入另一类型的模块— 标准模块(文件扩展名为 .BAS )中。一个过程可能用来响应几个不同对象中的事件,应该将这个过程放在标准模块中,而不应在每一个对象的事件过程中重复相同的代码。
用类模块(文件扩展名为 .CLS )创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块既包含代码又包含数据,可视为没有物理表示的控件。
在“工程的管理“中叙述了哪些部件可以添加到应用程序中,本章将说明如何将代码写到构成应用程序的各种部件中。按照缺省规定,工程包含唯一的窗体模块。可根据需要另行添加窗体、类和标准模块。“用对象编程”将讨论类模块。