-
vb msgbox给按钮caption_VB标准模块
2020-12-11 10:43:57我们知道,VB中所有的代码都是依附于模块的,而模块在VB中可以分为3种类型:窗体模块、标准模块和类模块。窗体模块我们在VB入门教程中已经学习过了。本节课程我们在来一起学习标准模块和类模块。标准模块标准模块是...我们知道,VB中所有的代码都是依附于模块的,而模块在VB中可以分为3种类型:窗体模块、标准模块和类模块。窗体模块我们在VB入门教程中已经学习过了。本节课程我们在来一起学习标准模块和类模块。标准模块标准模块是应用程序内供其它模块访问的公共过程和声明的容器。它可以包括变量、常量、类型、外部过程和全局过程的声明。也就是说,在多窗体应用程序中,对于在多个窗体中需要用到的变量、函数过程等,我们可以在标准模块中声明,这样就可以在其它窗体中调用。类模块类模块可以创建自定义的类,该类包括自己的属性、方法和事件。自定义的类相当于一个没有实体的控件。比如一个命令按钮,是VB系统中已经定义好的类,它具有自己的属性、方法和事件,它也有实体。而类模块创建的类除了没有实体外,其余性质与控件类似。类模块在进阶教程中暂不做深入介绍。一、添加标准模块在工程资源窗口,鼠标右键——添加——添加模块,即可添加一个标准模块了。标准模块只有代码编辑界面,而没有窗体。二、举例下面我们来举个例子深入理解标准模块的作用。1,首先创建一个工程,工程中包含一个窗体模块form1和一个标准模块Module1,如下图所示:
2,进入标准模块Module1,编写代码,如下所示:
注意:在代码区顶部,声明变量a和变量b。变量a使用public关键字声明:其表示全局变量,可以在本工程内所有窗体模块、标准模块、类模块中使用。变量b使用dim关键字声明:其表示模块级变量,仅在本模块中使用在form1窗体上绘制两个命令按钮,并修改其Caption属性,如下所示:Option ExplicitPublic a% Dim b% Sub test1() b = b + a MsgBox bEnd SubFunction test2(c%) As Long b = b + c test2 = bEnd Function
进入代码编辑界面,编写两个按钮的单击事件:
注意:可以直接使用变量a,因为它被定义为全局变量,而不可以使用模块级变量b,仅能在标准模块中使用。运行程序,多次单击两个按钮,观察结果。Private Sub Command1_Click() a = 2 Call test1 '调用子过程test1End SubPrivate Sub Command2_Click() MsgBox test2(2) '调用函数过程test2,并用msgbox输出结果End Sub
-
怎么不使用界面参与的情况下在vb标准模块里定义可以给界面传参数的方式是什么?
2016-12-26 14:57:34怎么不使用界面参与的情况下在vb标准模块里定义可以给界面传参数的方式是什么?怎么实现标准模块给界面添加代码事件? -
VB中窗体模块、标准模块、类模块的区别
2012-08-12 09:09:46在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)声明公用变量
在标准模块中声明 全局变量十分简单,键入关键字Public,后跟该 变量名。
缺省状态下,公用就量在模块中被声明为变体类型,但是可以通过使用As关键字来指定相应类型,可以把公用变量声明为某个指定的基本类型。
3.类模块
在VB中类模块是面向对象编程的基础。可以在类模块中编写代码建立新对象。这些新对象可以包含自定义的属性和方法。实际上,窗体正是这样一种类模块,在其上可安放控件,可显示窗体窗口
用类模块创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块包含代码又包含数据,可视为没有物理表示的控件。
模块设计的考虑
在VB中创建应用程序的最重要的部分是设计阶段。首先需要为应用程序设计一个用户界面,这个界面的设计比较容易确定。但设计代码的结构就是一项较复杂的工作。构造应用程序的方法不同,可能会造成应用程序的性能以及代码的可维护性,可使用性不同。
VB应用程序呈层次结构。典型应用程序包括若干个模块:应用程序中每个窗体的窗体模块、共享代码的标准模块和类模块。每个模块包含若干含 有代码的过程:Event过程,Sub过程或Function过程及Property过程。
在很多情况中都存在着多个对象共享的重复过程。这种情况最好创建一个共享的子过程,使大家都可以调用它。即使将来修改这些子程序,则只在一个地方修改就可进行全部修改,这将大大提高程序的可读性和可维护性。可以把所有的共享操作放在标准的模块中。★VB部分相关文章推荐:★
☆VB 进制转换大全(十进制、十六进制、八进制、二进制、二进制流)互转
☆VB SendMessage向其他程序窗口发送字符串消息实例
☆VB中Null, Empty, Nothing, and vbNullString的区别
☆用RtlAdjustPrivilege来调整进程权限(VB6.0代码)
☆[VB]SaveSetting 语句 和 DeleteSetting 语句
☆[vb]利用WScript.Shell对象隐藏cmd命令行运行
更多精彩>>> -
vb编程用标准模块代替窗体执行启动事件,因标准模块没有界面,怎么实现控件调用?
2017-01-01 15:17:52vb编程用标准模块代替窗体执行启动事件,因标准模块没有界面,怎么实现控件调用?怎么在sum main过程中调用控件事件? -
VB模块
2012-06-03 18:37:18模块有两种:标准模块 、 类模块 我们常用的窗体也是模块,它实际上是类模块一种。 有了窗体模块了,为什么还要有标准模块??? 现在,我们接触到的程序是简单的,可以只有一个窗体,程序的所有代码...Vb模块是什么???
简单说Vb模块是代码模块,Visual Basic 的代码存储在模块中。
模块的类型有哪些呢???
模块有两种:标准模块 、 类模块
我们常用的窗体也是模块,它实际上是类模块一种。
有了窗体模块了,为什么还要有标准模块???
现在,我们接触到的程序是简单的,可以只有一个窗体,程序的所有代码都驻留在窗体模块中。而当程序庞大
又复杂时,就需要另加窗体。这时我们会发现在几个窗体中都有要执行的公共代码。因为不希望在两个窗体中重
复代码,所以要创建一个独立模块,它包含
实现公共代码的过程。这个独立模块就是标准模块。
为了方便理解,我用了这么一个图:
-
vb6.0的标准模块的标准过程的定义怎么改变显示界面配置的变量
2017-01-19 11:57:42vb6.0的标准模块的标准过程的定义怎么改变显示界面配置的变量,怎么对界面的变量进行切换操作? -
用VB6标准模块实现微机与单片机间的通信源程序.doc
2008-10-08 17:03:39用VB6标准模块实现微机与单片机间的通信源程序.doc -
在vb编程中我们一般定义全局变量在标准模块中,标准模块会像ocx那样自动分配的内存变量么?
2016-12-05 06:41:49在vb编程中我们一般定义全局变量在标准模块中,标准模块会像ocx那样自动分配的内存变量么?还是在调用的时候会产生内存放入exe? -
请教怎么在VB的标准模块中定义函数,并且使用和系统库函数一致的函数名?
2016-11-07 03:45:41请教怎么在VB的标准模块中定义函数,并且使用和系统库函数一致的函数名?系统读取的时候调用的是用户函数么? -
怎么在vb中使用标准模块的方式实现直接给界面定制参数的实现?
2016-12-26 14:59:23怎么在vb中使用标准模块的方式实现直接给界面定制参数的实现?不通过界面vb有办法给界面传参么? -
请问怎么给vb中作为启动的标准模块summain过程添加vb内置控件timer实现界面的双显?
2017-01-05 06:23:59请问怎么给vb中作为启动的标准模块summain过程添加vb内置控件timer实现界面的双显?说废话不解决问题的垃圾混混请绕道! -
VB内FORM1与标准模块之间的数据交换问题
2019-01-04 15:55:53在form里面申明xx和yy,然后通过form里面的time进行累加,在模块里面用yy读xx的...以下是标准模块内代码: Public Sub module1() yy = xx * 2 End Sub 提示的错误是:未找到方法或数据成员 请帮忙修改下,谢谢! -
vb6.0使用标准模块启动的代码sum main的功能怎么实现input配置输入界面变量?
2017-01-21 12:13:54vb6.0使用标准模块启动的代码sum main的功能怎么实现input配置输入界面变量?怎么切换界面上的变量,使用input? -
如何使用vb6.0的标准模块启动的功能实现在文件中定义界面中的变量?
2017-01-21 10:11:47如何使用vb6.0的标准模块启动的功能实现在文件中定义界面中的变量?怎么实现下拉切换不同配置给界面的变量? -
vb标准(七):模块和过程
2010-04-10 20:43:00·创建具有很强内聚力的模块·创建更加容易调试和维护的过程·创建高度专用的过程·创建松散连接的过程·尽量使过程具有独立性·提高过程的扇入性·降低过程的扇出性·编程原则 ·为过程和模块赋予表义性强的名字 ...·创建具有很强内聚力的模块
·创建更加容易调试和维护的过程
·创建高度专用的过程
·创建松散连接的过程
·尽量使过程具有独立性
·提高过程的扇入性
·降低过程的扇出性
·编程原则
·为过程和模块赋予表义性强的名字
·为各个过程赋予单个退出点
·为每个过程赋予明确定义的作用域
·为参数在过程之间传递数据
·使用统一和直观明了的方式来调用过程 -
vb编程语言中将函数的触发事件的代码放在标准模块的做法是什么?
2016-12-22 15:51:45vb编程语言中将函数的触发事件的代码放在标准模块的做法是什么?怎么不通过界面就可以调用和触发模块的函数的事件呢? -
vb6.0实使用标准模块的方式实现配置对界面上变量组的切换怎么操作?
2017-01-19 15:09:57vb6.0实使用标准模块的方式实现配置对界面上变量组的切换怎么操作?怎么使用代码控制切换界面的变量组? -
VB6中单类模块子类化类,不需要再在标准模块中写消息处理过程了,作者PctGL
2012-12-17 22:03:50单类模块实现子类化消息拦截示例(PctGL版) 这个类模块采用内嵌汇编技术,实现了单类模块化,不再需要AddressOf与标准模块了. 对于工程的结构有帮助. -
怎么在vb中文用标准模块的summain子过程代替界面的摆放实现初始化和调用控件?
2017-01-01 13:03:17怎么在vb中文用标准模块的summain子过程代替界面的摆放实现初始化和调用控件?并且控件参量也要传递?怎么在sum main这个过程里实现? -
vb6.0中文怎么将控件的调用放在标准模块的启动对象过程中,同时触发界面?
2017-01-02 08:19:54vb6.0中文怎么将控件的调用放在标准模块的启动对象过程中,同时触发界面?怎么从界面得到参量返回标准模块? -
请问vb6.0中文怎么实现将标准模块作为启动窗体而不是sum main过程作为启动对象?
2016-12-26 17:07:09请问vb6.0中文怎么实现将标准模块作为启动窗体而不是sum main过程作为启动对象?能不能在标准模块中就提前给窗体参量的调用? -
vb系统软件开发编程编写屏显菜单的实现,标准模块怎么和菜单进行对接?
2017-01-09 11:00:53vb系统软件开发编程编写屏显菜单的实现,标准模块怎么和菜单进行对接?省略了界面和菜单编辑器,代码和菜单的衔接怎么做? -
怎么在vb6.0中实现仅用标准模块在启动的时候同时显示两个界面?
2016-12-30 14:27:37怎么在vb6.0中实现仅用标准模块在启动的时候同时显示两个界面?怎么设置多重启动窗体对象? -
怎么在vb6中文编程语言中将事件的调用放在标准模块的实现,而不是从界面调用?
2016-12-21 15:43:52怎么在vb6中文编程语言中将事件的调用放在标准模块的实现,而不是从界面调用?怎么在标准模块启动一个事件触发的调用呢? -
请问怎么在vb6.0中文版中实现标准模块直接选择切换指定界面上的全部变量?
2017-01-20 10:39:43请问怎么在vb6.0中文版中实现标准模块直接选择切换指定界面上的全部变量?怎么用配置替换一个界面上的变量? -
vb6.0编程环境在标准模块中调用input函数实现显示的界面的变量的切换怎么实现?
2017-01-20 15:41:05vb6.0编程环境在标准模块中调用input函数实现显示的界面的变量的切换怎么实现?怎么用input函数实现变量的切换? -
请问使用vb编程的方法在程序启动以前先弹出菜单,代码是不是写在标准模块里
2017-01-06 15:42:15请问使用vb编程的方法在程序启动以前先弹出菜单,代码是不是写在标准模块里,怎么启动菜单而不是界面?菜单先启动,再选择界面的方式是什么? -
y怎么在vb6语言中实现在标准模块中定义和使用activx,具体的语句怎么写?
2017-01-03 09:22:27y怎么在vb6语言中实现在标准模块中定义和使用activx,具体的语句怎么写?我想调用timer控件怎么做?