vb中不同窗体间是如何传递变量值的

大韩 2004-01-30 12:05:49
vb6中不同窗体间是如何传递变量值的.在同一个工程中,在一个窗体中定义了public是不是也只能在本窗体中用。那多个窗体间是如何传递参数的或是变量值的
...全文
2010 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
windeflower 2004-01-30
  • 打赏
  • 举报
回复
1.在模块中用public定义全局变量即可
2.将form中的变量定义为public ,其他form 也就可以使用了(可写也可读)
调用时要加form.xxx
DarknessTM 2004-01-30
  • 打赏
  • 举报
回复
直接调用:
调用Form1的x
为Form1.x
Maconel 2004-01-30
  • 打赏
  • 举报
回复
添加一个模块,在里边声明变量,但是把dim 改为public
比如
Public a As Integer
你可以把程序中所有用到的全局变量都在这里声明
rainstormmaster 2004-01-30
  • 打赏
  • 举报
回复
在模块中用public定义全局变量即可
davidlv 2004-01-30
  • 打赏
  • 举报
回复
1.在模块中定义一个public 变量
2.将form中的变量定义为public ,其他form 也就可以使用了(可写也可读)
3.在form中写一个属性(一般定义为只读),外部也就可以使用了

public property get A as variant
a=某一个变量(在form中定义为private)
end property
kmzs 2004-01-30
  • 打赏
  • 举报
回复
在模块中用public定义全局变量即可
啊维 2004-01-30
  • 打赏
  • 举报
回复
直接在模块中用Public定义
pyf1027 2004-01-30
  • 打赏
  • 举报
回复
有两种方法:
一、在模块里定义全局变量(public),各个窗体之间就可以直接使用。

二、在窗体中的通用--声明下定义全局变量(public),然后在其他的窗体中使用该窗体的变量时,要这样用:该窗体名.全局变量名。

举例:在窗体form1的通用--声明下定义全局变量确public str as String
在窗体form1的任何地方给变量str赋值:str="aaa";
然后在窗体form3中需要取得form1传递的值(我们假设是str的值),给form3中的文本框text1则代码为:text1.text=form1.str ,则text1="aaa" 。
smarter 2004-01-30
  • 打赏
  • 举报
回复
1、在模块里定义全局变量
2、Label1.caption=另外一个窗体.变量名
华芸智森 2004-01-30
  • 打赏
  • 举报
回复
1.可通过模块中的 PUBLIC 变量.
2.可通过DDE
3.可通过剪切板.
4.可通过API中的 memory copy
goodname008 2004-01-30
  • 打赏
  • 举报
回复
Public 语句



在模块级别中使用,用于声明公用变量和分配存储空间。

语法

Public [WithEvents] varname[([subscripts])] [As [New] type] [,[WithEvents] varname[([subscripts])] [As [New] type]] . . .

Public 语句的语法包含下面部分:

部分 描述
WithEvents 可选的。关键字,说明 varname 是用来响应由 ActiveX 对象触发的事件的对象变量。只有在类模块中才是合法的。使用 WithEvents,可以定义任意个所需的单个变量,但不能用 WithEvents 创建数组。New 和 WithEvents 不能一起使用。
varname 必需的。变量的名称;遵循标准的变量命名约定。
subscripts 可选的。数组变量的维数;最多可以定义 60 维的多维数组。subscripts 参数使用下面的语法:
[lower To] upper [,[lower To] upper] . . .
如果不显式指定 lower,则数组的下界由 Option Base 语句控制。如果没有 Option Base 语句则下界为 0。
New 可选的。用它可以隐式地创建对象的关键字。如果使用 New 声明对象变量,则在第一次引用该变量时创建该对象的新实例,因此不必使用 Set 语句来对该对象引用赋值。New 关键字不能用来声明任何内部数据类型的变量以及从属对象的实例,也不能与 WithEvents 一起使用。
type 可选的。变量的数据类型;可以是 Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(目前尚不支持)、Date、String(对变长的字符串)、String * length(对定长的字符串)、Object或 Variant,用户定义类型,或对象类型。所声明的每个变量都要有一个单独的 As type 子句。


说明

Public 语句声明的变量在所有应用程序的所有没有使用 Option Private Module 的模块的任何过程中都是可用的;若该模块使用了 Option Private Module,则该变量只是在其所属工程中是公用的。

小心 不能在类模块中使用 Public 语句来声明一个定长的字符串变量。

使用 Public 语句可以声明变量的数据类型。例如,下面的语句声明了一个 Integer 类型的变量。

Public NumberOfEmployees As Integer

也可以使用 Public 语句来声明变量的对象类型。下面的语句为工作表的新实例声明了一个变量。

Public X As New Worksheet

如果在定义对象变量时没有使用 New 关键字,则在使用该变量之前,必须使用 Set 语句将一个已有的对象赋给这个引用对象的变量。在被赋值之前,所声明的这个对象变量有一个特定值 Nothing,这个值表示该变量没有指向任何对象的实例。

可以用带空圆括号的 Public 语句来声明动态数组。在声明了动态数组之后,可以在过程内用 ReDim 语句来定义该数组的维数和元素。如果试图在 Private、Public 或 Dim 语句中重定义一个已被显式定义了大小的数组的维数,就会发生错误。

如果不指定数据类型或对象类型,且在模块中没有使用 Deftype 语句,则按缺省情况该变量为 Variant 类型。

当初始化变量时,数值变量被初始化为 0,变长的字符串被初始化为一个零长度的字符串 (""),而定长的字符串则用 0 填充。Variant 变量被初始化为 Empty。用户自定义类型的变量的每个元素都作为各自独立的变量进行初始化。
czw1975 2004-01-30
  • 打赏
  • 举报
回复
可以考虑使用form或它的控件的 Tag 属性,它不用定义,直接使用节省内存:)
form.tag 或 form.控件.tag
----------------------------------------------------
Tag 属性


返回或设置一个表达式用来存储程序中需要的额外数据。与其它属性不同,Tag 属性值不被 Visual Basic 使用;可以用该属性来标识对象。

语法

object.Tag [= expression]

Tag 属性语法包含下面部分:

部分 描述
object 对象表达式,其值是“应用于”列表中的一个对象。
expression 字符串表达式用来标识对象,缺省值为零长度字符串 ("")。


说明

利用该属性可以给对象赋予一个标识字符串,而不会影响其任何其它属性设置值或引起副作用。当需要检查控件或作为变量传递给过程的 MDIForm 对象的标识时,Tag 属性是有用的。

提示 创建一个新的窗口实例时,给 Tag 属性赋予唯一值。

7,771

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧