以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口,botton设置静态变量,发布前后不一致  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=88066)

--  作者:wjl-se
--  发布时间:2016/7/26 11:32:00
--  窗口,botton设置静态变量,发布前后不一致

实例测试:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.rar


--  作者:大红袍
--  发布时间:2016/7/26 11:53:00
--  

嗯嗯,是有这个问题。不过,发布后的才是正确的。static变量,就是一直存在的,直到你的项目关闭,才会消失。

 

你根据这个特性,对应的修改你的程序吧。


--  作者:wjl-se
--  发布时间:2016/7/26 13:00:00
--  

这样啊……那举个例子,窗口里有个加载按钮:

Static cnt As Integer \'静态变量限制点击次数,防止多次加载
cnt = cnt + 1

If cnt = 1 then

...‘加载

End If

 

第一次是没有问题的,如果再打开这个窗口点击加载,这时cnt已经大于1,不会执行加载了。

可我想要的是每次打开窗口,只响应第一次的点击,执行加载,应该怎么搞?

 


--  作者:wjl-se
--  发布时间:2016/7/26 13:30:00
--  

除了用全局变量,有没有窗口级别的“全局变量”?


--  作者:大红袍
--  发布时间:2016/7/26 14:27:00
--  

 没有窗口级别的全局变量。

 

 你可以这样变通,afterLoad事件

 

Dim dic As new Dictionary(Of String, object)
e.Form.panel.tag = dic

 

-------------调用

 

Dim dic = e.Form.panel.tag
dic.add("test", 123456)

msgbox(dic("test"))


--  作者:wjl-se
--  发布时间:2016/7/26 14:52:00
--  
好哒,谢谢。