加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb中如何跨窗口调用变量

发布时间:2020-12-17 07:44:54 所属栏目:百科 来源:网络整理
导读:主要有三种办法: 1、模块里的公共变量 添加一个模块Module,在模块里声明变量。 Public FormValueA As Long 你可以在任何窗体里直接用FormValueA调用它。 但这个办法最不可靠,只适合在一些非常简单的小程序里使用。 因为这种变量任何窗体、模块都可以改变
主要有三种办法:
1、模块里的公共变量
添加一个模块Module,在模块里声明变量。
Public FormValueA As Long
你可以在任何窗体里直接用FormValueA调用它。
但这个办法最不可靠,只适合在一些非常简单的小程序里使用。
因为这种变量任何窗体、模块都可以改变它的值。如果你在其他的窗体、模块意外地改变了它的值,或者是在不恰当的时机改变它的值,很容易造成程序错误。

2、公共变量
假如有个窗体叫Form1,在窗体里声明一个公共变量FormValueB。
Public FormValueB As Long
那么你在其他窗体里可以用Form1.FormValueB调用它。
这个办法也不可靠,在一些正规程序设计里应该被避免使用。
因为任何一个外部的过程都有可能改变这个值,也容易出现混乱。
但它至少比第一种好一些。
3、给窗体添加属性
假如有个窗体叫Form2,在窗体里声明一个属性FormValueC。
在窗体里声明一个私有变量FormValueD。
Private FormValueD As Long
Public Property Get FormValueC() As Long
'输出属性值
FormValueC = FormValueD
End Property
Public Property Let FormValueC(ByVal vNewValue As Long)
'输入属性值
FormValueD = vNewValue
你在其他窗体里可以用Form2.FormValueC调用它。
在Form2窗体里,这个属性的值实际保存在FormValueD变量里。
这个办法最复杂,但这是比较正规的做法。
你可以在输入、输出过程中对变量进行一些检测、判断,这样可以避免外界的调用对这个窗体造成干扰。
属性的值有时候未必在窗体里是一个变量。
比如:你写一个登记个人信息的窗体。假如输入了身份证号码,那么生日属性可以从身份证号码里提取。这样,生日属性就不必有个专门的变量存储,类似这样。
Public Property Get Birthday() As Long
……从身份证号码提取生日……
Birthday = 被提取出来的生日
表面上看,你调用了Form3.Birthday好像从变量赋值一样获得生日。但实际上这个属性的值是属性的过程算出来的。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读