以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 怎么将一组变量作为一个整体,用到多个不同的地方呢?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157810)

--  作者:龙潭春早
--  发布时间:2020/10/29 17:41:00
--  [求助] 怎么将一组变量作为一个整体,用到多个不同的地方呢?
一组变量的数量和种类都很多,逐个定义好并赋值后,需要将其作为一个整体,一起用到多个不同的地方,再由这些地方直接调用这些变量。

由于有时要增减、修改变量,如果在多个地方修改,一个是麻烦,另一个是容易出错。

有什么办法将这些代码封装起来,作为一个整体来用吗?

这样的话,修改只在一处进行,其它地方都只是调用。

想到了用自定义函数,但是其中的变量不能在执行自定义函数后直接使用,这导致该方法不可行。

有什么更好的方法吗?

--  作者:有点蓝
--  发布时间:2020/10/29 20:14:00
--  
可以使用字典、集合、数值
--  作者:龙潭春早
--  发布时间:2020/10/30 18:10:00
--  
蓝老师,字典和集合,应该也没法做到跨窗口、跨事件引用吧?

数值是怎么个用法呢? 是用一个表来保存数据吗?

--  作者:有点蓝
--  发布时间:2020/10/31 9:25:00
--  
肯定可以跨窗口、跨事件引用,使用全局变量即可。如果要长期保存这些数据,肯定要使用表来保存
--  作者:龙潭春早
--  发布时间:2020/11/12 18:34:00
--  
蓝老师:

1、生成好的字典和集合,怎么做到跨窗口、跨事件引用呢?

能给出一个示例和代码吗?

2、用全局变量,又怎么引用这些生成好的字典和集合呢?

--  作者:有点蓝
--  发布时间:2020/11/12 20:28:00
--  
比如全局代码

public _lst as new list(of string)

按钮a
_lst.add("abc")

按钮b或者其它任意事件
_lst.add("123")
msgbox(_lst(0))

--  作者:龙潭春早
--  发布时间:2020/11/12 22:14:00
--  
知道有 Var 和 Public 两种全局变量,Var用的多些,Public 基本上没用过。

发帖提问前,特意去帮助和菜单中查过这两个变量的相关内容,Var 有一些类型的列表,Public 没有应用类型的列表,也没看到有全局变量在集合方面的相关应用,所以以为不能直接定义成集合的全局变量。

如果可以这样定义集合的全局变量的话,那可真是太好了!

不过,

1)看 Var 的类型中,没有提到 Table、Row、Col 等等类型,是不是没有列出的类型,就不能将 Var 定义为这些类型的全局变量?

2)而 Public 没有列出应用的类型,是不是就没有这些限制,反而可以定义为任意类型的全局变量?



--  作者:有点蓝
--  发布时间:2020/11/12 22:23:00
--  
1、可以第一位任何类型,需要通过代码,直接使用即可,如:vars("a") =  new list(of string)

2、这个属于vb.net基本语法,可以自行百度学习一下

--  作者:龙潭春早
--  发布时间:2020/11/12 22:33:00
--  
呵呵 多谢!
--  作者:龙潭春早
--  发布时间:2020/11/16 17:05:00
--  
全局变量 Var 的集合可以这样定义:  vars("a") =  new list(of string)

全局变量 Var 的数组,要怎么定义呢?