用DataSet实现全局变量

dcount107:
 你好!
 现在我想定义一个数组做为全局变量,要让数组在全局脚本的过程,画面的局部过程里都能访问,读写数据。
 麻烦你给个详细的代码。谢谢!!!

 -------------------------------------------------
 下面是我的尝试,搞不定
 以一个变量为例子:
 Sub  InitVar()   '全局过程
 Dim a
 a = 10
 HMIRuntime.dataset.add "a",a
 End 

 在画面打开时调用 InitVar()  
 画面中有一个按钮,点击代码如下:
 Dim a
 Set  a = HMIRuntime.dataset("a").value 

 出错提示“缺少对象”
 

问题补充:
非常感谢!
 现在用数组是可以读了,我想给数组写值,又该如何?
 我太笨啦,没试出来

最佳答案

你好!赋值时不用set

  a = HMIRuntime.dataset("a").value
 -------------------------
 数组也一样,只是取值的时候把变量直接当成数组即可。
 Dim a(10),i
 For i=1 To 10
  a(i) = i
 Next
 HMIRuntime.DataSet.Add "a",a
 ----------------
 Dim a,i
 a = HMIRuntime.DataSet("a").Value 
 For i=1 To 10
  HMIRuntime.Trace "a("+CStr(i)+") = " &a(i)& vbCrLf
 Next

提问者对于答案的评价:
谢谢,但是怎么对全局数组写值,还请赐教!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc275396.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午11:33
下一篇 2019年6月11日 上午11:33

相关推荐