当前位置:编程学习 > VB >>

VB中模块与窗体有何区别与联系。

VB中模块与窗体有何区别与联系。
答案:
VB的代码存储在模块中。在VB中提供了三种类型的模块:窗体模块、标准模块和类模块。 
简单的应用程序可以只有一个窗体,所用的程序都驻留在窗体模块中,而当应用程序庞大复杂时,就要另外附加窗体。最终可能有几个窗体中有一些共同都要执行的代码,为了在两个窗体中不产生重复代码,可创建一个独立的模块,用它实现代码公用。该独立模块即是标准模块。此外还可以建立包含共享代码与数据的类模块。
每个标准模块、类模块和窗体模块可包含:
声明。 可将常数、类型、变量和动态链接库(DLL)过程的声明放在窗体、类或标准模块的声明部分。每个模块只有一个声明部分
过程。每个模块可有多个过程,过程是划分VB代码的最小单元,每个过程是一个可执行的代码片段。VB中主要有子过程、函数过程或者属性过程等
各种模块类型
1.窗体模块
由于VB是面向对象的应用程序开发工具,所以应用程序的代码结构就是该程序在屏幕上表示的对应模型。根据定交,对象包含数据和代码。应用程序中的每个窗体都有一个相对应的窗体模块(文件扩展名为.frm)
窗体模块是VB应用程序的基础。窗体模块可以包含处理事件的过程、通用过程以及变量、常数、自定义类型和外部过程的窗体级声明。写入窗体模块的代码是该窗体所属的具体应用程序专用的;也可以引用该程序内的其它窗体和对象
每个窗体模块都包含事件过程,在事件过程中有为响应该事件而执行的程序段。窗体可包含控件。在窗体模块中,对窗体上的每个控件都有一个对应的事件过程集。除了事件过程,窗体模块还可包含通用过程,它对来自该窗体中任何事件过程的调用都作出响应。
2.标准模块
标准模块是程序中的一个独立容器,包含全局变量、Function(函数)过程和Sub过程(子过程)。
可将那些与特定窗体或控件无关的代码放入标准模块中。标准模块中包含应用程序内的允许其它模块访问的过程和声明。它们可以包含变量、常数、类型、外部过程和全局声明或模块级声明。写入标准模块的代码不必固定在特定的应用程序上;
(1)使用标准模块
在编写程序时,很可能会遇到一些使用相同变量和例程的窗体和事件过程。在缺省状态下,变量对于事件过程来说是局部的,就是说仅能在创建这些变量的事件过程中读取或者修改变量。与之相似,事件过程对于创建它们的窗体来说也是局部。为了在工程中的所有窗体和事件易做图享变量和过程,需要在该工程的一个或多个标准模块中对它们进行声明和定义。
标准模块或代码模块是具有文件扩展名.bas,并包含能够在程序任何地方使用的变量和过程的特殊文件。
正如窗体一样,标准模块被单 独列在Project(工程)窗口内,并可通过使用File(文件)菜单中的Save Modulel As菜单项存盘。但是,与窗体不同,标准模块不包含对象或属性设置而只包含可在代码窗口中显示和编辑的代码。
(2)创建标准模块
如要在程序中创建新 的标准模块,那么单击工具条Add Form(添加窗体)按钮上的下箭头并单击Mode(模块),或者单 击Project(工程)菜单中的Add Module(添加模块)菜单项。在工程中创建一个空的标准模块的步骤如下:
S1:启动VB,打开一个新的标准工程,单击工程 菜单中的Add Module菜单项,单击Open 按钮。VB在工程中增加一个名为Module的标准模块。该 模块对应的代码窗口被打开,对象和过程列表框的内容表明该 标准模块的通用声明已被打开。在此所声明的变量与过程 在整个程序都可以使用。
S2:双击工程资源管理器窗口的标题条,以便能看到整个工程资源管理器窗口,
S3:在File(文件)菜单中,单 击Save Modulel As
S4:如果D:\VB6sbs\less10文件夹未被选择时,选择该文件夹,键入MyTestMod.bas,然后按回车。该标准模块作为MyTestMod.bas文件保存到磁盘,并且可以通过Project(工程)的Add File菜单项可将此文件通过其文件名加载到另一个工程中。
S5:双击Project(属性)窗口标题条。由于模块不包含对象,因此它惟一的属性就是Name
S6:将Name属性改为modVariables,然后按ENTER键。
3.类模块
在VB中类模块是面向对象编程的基础。可以在类模块中编写代码建立新对象。这些新对象可以包含自定义的属性和方法。实际上,窗体正是这样一种类模块,在其上可安放控件,可显示窗体窗口
用类模块创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块包含代码又包含数据,可视为没有物理表示的控件。
哈哈,跟我当初一样,三者之间难分难解,真让人头痛.窗体可以看做是一个主体,一个可视化的命令窗口.[结构化语言发展到一定程序的产物]其实程序的主体就是模块,C语言就是典型的代表,结构化的语言.新手可以简单理解为编写过程的地方,以便我们调用. 如在模块中:public sub DelFile()Kill "C:\1.txt" '删除C:\1.txtend sub写了过程之后,我们就可以调用了.例如在窗体的按钮Command1中:Private sub command_Click()DelFile '//调用模块里的DelFile过程,实现删除 C:\1.txtend sub再说说类模块。类模块简称类,跟模块相似,不同的是类是不可视的控件.Usercontrol[控件]其实就是类,只不过他是可视的.按钮,文本框也是类,都是可视化的类.这些概念等真正对VB有够深的了解,就能迎刃而解了.表达不大清楚,见谅.

上一个:用VB怎么制作出屏幕保护程序
下一个:求助VB编程高手关于数据库连接的方法

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,