以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] 关于使用静态变量 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=46689) |
-- 作者:bahamute -- 发布时间:2014/2/27 9:30:00 -- [求助] 关于使用静态变量 在窗体1的afterload中声明静态变量 Static ibs As Integer =1 主要用于记录窗体1上的按钮A被点击的奇偶次数,但在该按钮的click事件中引用变量ibs,会提示ibs未声明!
是我声明的位置不对吗?还是说只能全局变量? [此贴子已经被作者于2014-2-27 9:35:54编辑过]
|
-- 作者:Bin -- 发布时间:2014/2/27 9:32:00 -- 只能用全局变量 |
-- 作者:blackzhu -- 发布时间:2014/2/27 9:38:00 -- 你把这个变量放窗口事件 怎么记录呢 |
-- 作者:bahamute -- 发布时间:2014/2/27 9:38:00 -- 就是说只限于窗体内使用的变量,也只能全局吗?是这个意思吧? |
-- 作者:狐狸爸爸 -- 发布时间:2014/2/27 9:39:00 -- 窗口级别的方法与变量
Foxtable提供了内部函数和全局变量,用于在不同的事件之间复用代码和数据。 一些方法和变量,可能并不需要全局共享,例如在设计窗口的时候,某些方法和变量只需在本窗口共享,但是Foxtable并没有提供窗口级别的方法和变量,不过我们可以用变通的方法来实现。 e.Controls("按钮名称").PerformClick()
这样就间接实现了窗口级的方法共享。
同样我们可以在窗口中加入一个或多个隐藏的Label,利用其Text属性作为窗口级别的变量。
当然你愿意的话,也可以全部采用内部函数和全局变量,这没有什么不好,看你的习惯,本节只是为了给大家多一个选择。 |
-- 作者:bahamute -- 发布时间:2014/2/27 9:45:00 -- 我本来认为只要窗体没有关闭,变量应该是有效的,可以被调用,看来理解有误。 |
-- 作者:逛逛 -- 发布时间:2014/2/27 10:02:00 -- 凑一脚
还有一种方法
窗口初始 Dim a As Integer
调用时 |
-- 作者:lsy -- 发布时间:2014/2/27 10:20:00 -- 俺就喜欢偷懒:用e.Form.Text传来传去。 |
-- 作者:逛逛 -- 发布时间:2014/2/27 10:38:00 -- 我最喜欢用TextBox来传递,既能传值,又有事件 |