vb中窗体 模块 类模块之间关系 请详细明白一点

作者&投稿:佼凡 (若有异议请与网页底部的电邮联系)
VB 一个很长的程序 有窗体 模块 类模块 我需要把它看明白 从哪个开始容易些~

我也是从这个时候过来的人。
首先,你有没了解基本的VB控件,语法知识。先了解一些基本的最好,然后再看这个程序就让你容易多 了。
然后,先一个一个窗体的看,从窗体的form_load 开始看,遇到不懂的就看MSDN帮助,讲的很详细,强烈推荐。
各个窗体的功能都大致明白了之后,就再从整个程序的的开始,一个过程一个过程的去看。
最后就全明白了

1)工程:包含 窗体、模块 等,是一个完整的软件项目
2)窗体:是用户能看到的窗口
3)模块:是程序代码模块
4)过程:就是一个个的功能块

对于这个问题,我的回答是:窗体,模块和类模块之间没有本质的,必然的联系。要有,也是按照编程的需要建立起来的一种对应关系。就一般意义而言,可以为一个窗体建立一个模块,来书写数量较多的代码,实现一些功能。也可以几个窗体共享一个模块。也就是说这种对应关系不是唯一的,要看具体需要。因为实际编程中,出于可读性和安全性的考虑,窗体区域内的代码量一般不会太多,基本就是一些初始化的代码,所以就引入了通用模块,在模块中编写功能代码。类模块也是模块,只不过是一种特殊的模块。类模块的代码具有比一般通用模块更强的针对性,它往往是为了表达类本身所具有的属性和行为,而且这种表达是比较全面的。类模块和模块一起合作,如果用的好的话,可以条理清晰地解决实际中一些复杂的问题。
模块即通用模块的引入是为了结构化编程的需要。在实际编程中,每一个模块中的代码常用来实现一个或一组类似的功能,模块中包括了要实现的功能的所有常量声明,变量定义,函数声明等等。模块通过声明和编写公共函数(Public Function或Function)与窗体或其他模块l链接,实现通信。
类模块,我的理解是VB为了能够实现面向对象编程而引入的,虽然不是真正意义上的面向对象。在实际编程中,类模块可以定义私有变量(Private)或公有变量(Public),私有变量只能被本类模块中的函数和事件过程使用,而公有变量能够被类在窗体或通用模块模块等非本类模块的位置实例化后访问。与模块类似,类模块中也可以定义公有函数与外部进行通信。类模块对于初学者理解起来可能有点难度,我在此就举个实例简单介绍一下如何建立和引用一个类模块:
1. 首先点击“工程”,选择“添加类模块”建立一个默认Name为Class1的类模块,类模块的命 名可以自行更改,但必须合法和唯一,它是唯一标识类的ID。我权且将它命名为Student。
2. 在类中定义几个变量,比如Private ID as long , Public stdName as string , Public Socre as Integer。在随便写几个函数比如Function AddData() , Private Function DeleteData()。
3. 双击击Form1,在“通用”区域输入Private Std as New Student(实例化类Student为Std)。在Form_Load事件中,输入"Std.",注意此时会跳出提示,VB自动为你列出了Std的成员属性stdName和Score以及事件AddData,你可能会奇怪为什么没有显示自己定义的所有成员,原因就在第二步中定义的变量和事件的范围不同,此时相信你应该明白当初定义Public和Private时两者的区别了。你如果在程序中强行引用类模块的私有变量,比如n=Std.ID,那么编译器就会报错“未找到方法或数据成员”。其实类模块可以跟VB中的控件联系起来。其实每一个控件相当于用类模块定义的类。比如TextBox是类的ID,Text1是TextBox的一个实例,Text1的Text,Visible等属性对应着TextBox类模块中定义的许多Public变量。而Text1的Change,MouseMove等事件对应着类模块中定义的许多Public函数或过程。如果你理解了这一点,相信你对类模块已经有了一个较完整的认识。
4. 还有一个最本质的问题,为什么要引入类模块,或者说这有什么好处呢?我的理解是:如果你要编程解决的问题很简单,那么类模块对你来说并无多大意义。但是如果你要编程处理一个复杂的问题,那么类模块就大有所为了。类模块在实际应用中按照面向对象编程的思想,把一个实际问题的行为主体抽象成一个个类,每个类的描述性属性构成类的成员变量,也称属性;类的成员的行为构成类的成员函数。(如编写一个学生信息管理系统时,可以抽象出用户类,学生类等;用户类有用户名,密码等属性,有增删改函数;学生类有学号,姓名等属性,有录入,删改等函数。等等。)这样做可以让你的代码集中起来,便于代码的重用和维护,也增强了可读性,提高了开发效率。
以上全部是我的个人观点,讲的不对的还望海涵。欢迎拍砖!

窗体是可视化的程序,其中可加载各个控件,而各个控制又可以写入相应的代码以响应用户的命令。模块是公用变量,公用函数的集合。各个窗体或类模块经常用到的函数变量可以放入模块,而不必要很次使用都重新编写。
类模块是没有窗体显示的代码集合。其现实的功能类似于窗体,但是却没有可见的东西。一般使用类模块多用于可升级的程序或操作数据的程序。举例说明,如果你的程序可升级,那么你将需升级的部分编写成类模块形式,那么每次升级时就可以仅给出类模块部分而不必改变整个程序。而在数据库应用中,类模块就可将操作某一个表的程序放入相应的模块,那么只要引用类模块就可以像控制控件一样,操作整个数据表的录入,修改等相关操作!


康保县15378507585: vb中窗体 模块 类模块之间关系 请详细明白一点
甘肿百普: 哈哈,跟我当初一样,三者之间难分难解,真让人头痛. 窗体可以看做是一个主体,一个可视化的命令窗口.[结构化语言发展到一定程序的产物] 其实程序的主体就是模块,C语言就是典型的代表,结构化的语言. 新手可以简单理解为编写过程的地...

康保县15378507585: vb中的标准模块 类模块 窗体模块 是什么意思 它们中有什么联系 -
甘肿百普: 模块 Model 类Class 窗体也是个Class 使用Model中的东西,如果声明了Public是可以直接使用的. 可是Class要 Dim NewClass as new ClassModel 这么用

康保县15378507585: 类模块,标准模块,窗体模块之间的关系与不同 -
甘肿百普: 窗体模块就是设计窗体的时候的每一个函数,就是function 用来调用的 与类模块差不多. 但是标准模块只包含代码,而类模块包含代码又包含数据,可视为没有物理表示的控件

康保县15378507585: vba的“对象”、“窗体”、“模块”、“类模块”是什么关系? -
甘肿百普: 对象是编程的一个概念,对象有方法,有属性,比如工作表,工作簿,单元格,都是对象 窗体,一种特殊的模块,可以设计空间 模块,也就是普通模块,是代码编辑和执行的容器 类模块,也是一种特殊的模块,比较复杂,可以自定义 类,自定义类的 属性,方法,甚至事件 关于类,类是对象的原始模型,是没有实例化的对象,类实例化以后叫对象 这么说你会糊涂,这个的慢慢理解,一般都是用 模块写代码,你只要知道这个就行了

康保县15378507585: VB中什么叫模块呢?类模块又是什么? -
甘肿百普: VB代码存储在模块中,模块有三种类型:窗体模块,标准模块,类模块.窗体模块(.frm)是大多数VB应用程序的基础.标准模块(.bas)是应用程序内其它模块访问的过程和声明的容器.在VB中类模块(.cls)是面向对象编程的基础.可在类模块中编写代码建立新对象.这些新对象可以包含自定义的属性和方法.

康保县15378507585: vb中模块和类模块有什么区别 -
甘肿百普: 各种模块类型 1.窗体模块 由于VB是面向对象的应用程序开发工具,所以应用程序的代码结构就是该程序在屏幕上表示的对应模型.根据定义,对象包含数据和代码.

康保县15378507585: vb6的模块和类模块有什么区别 -
甘肿百普: vb的帮助文件中指出,vb有3种类型的模块:窗体模块,标准模块,类模块.没一个模块都和一个文件相联系,3种模块对应着3中不同类型的文件.窗体模块存放在扩展名为frm的文件中,标准模块存放在扩展名为bas的文件中,类模块存放在扩...

康保县15378507585: 请教各位,有谁知道vb 里的”模块”与”类模块”的区别呀,请尽量说详细一点.谢谢了. -
甘肿百普: Visual Basic 的代码存储在模块中.模块有三种类型:窗体、标准和类.简单的应用程序可以只有一个窗体,应用程序的所有代码都驻留在窗体模块中.而当应用程序庞大复杂时,就要另加窗体.最终可能会发现在几个窗体中都有要执行的公共...

康保县15378507585: VB中 模块 类 窗体 加载顺序 -
甘肿百普: 模块是最先加载的吗?如果启动是从窗口启动,模块也要先启动吗?显然不是吧!如果是sub Main函数启动的话,先从模块启动...先加载模块...如果是从窗口启动的话..先加载窗体...再加载公共变量.. 类是在调用时才加载的... 窗体是不是最后加载的..要看你的代码...如果你用load form1...那么窗体是先加载的... 如果你要先加载窗体再加载模块...那么只要用启动的方式用窗体启动就可以了.. 至于第三点..是可以自己定义的...模块先加载..类后加载....

康保县15378507585: vb 中的模块与类模块的区别 -
甘肿百普: 模块是公共的,类不一样 比如 模块 里 public abc as boolean abc在程序任何地方都能使用这个abc 如果类里面 比如类名叫xxy 你必须 dim x as new xxy ,y as new xxy 再用 x.abc ,y.abc 取设这个变量 而且 x.abc 和y.abc是不同的变量

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网