Foxtable(狐表)用户栏目专家坐堂 → [求助] 关于使用静态变量


  共有4241人关注过本帖树形打印复制链接

主题:[求助] 关于使用静态变量

帅哥哟,离线,有人找我吗?
bahamute
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
[求助] 关于使用静态变量  发帖心情 Post By: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
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/27 9:32:00 [只看该作者]

只能用全局变量

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/2/27 9:38:00 [只看该作者]

你把这个变量放窗口事件 怎么记录呢


 回到顶部
帅哥哟,离线,有人找我吗?
bahamute
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2014/2/27 9:38:00 [只看该作者]

就是说只限于窗体内使用的变量,也只能全局吗?是这个意思吧?

 回到顶部
帅哥哟,离线,有人找我吗?
oaok
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1198 积分:7859 威望:0 精华:0 注册:2013/5/17 14:26:00
  发帖心情 Post By:2014/2/27 9:38:00 [只看该作者]

用户已经被屏蔽

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/2/27 9:39:00 [只看该作者]

窗口级别的方法与变量

 

Foxtable提供了内部函数全局变量,用于在不同的事件之间复用代码和数据。

一些方法和变量,可能并不需要全局共享,例如在设计窗口的时候,某些方法和变量只需在本窗口共享,但是Foxtable并没有提供窗口级别的方法和变量,不过我们可以用变通的方法来实现。

我们可以在窗口中加入一个按钮(Button),将其“可见”属性设置为False,并将需要在该窗口中重复调用的方法代码,写在此按钮Clik的事件中。

窗口中的其它事件可以下面的方式执行此段代码:

e.Controls("按钮名称").PerformClick()

 

这样就间接实现了窗口级的方法共享。

 

同样我们可以在窗口中加入一个或多个隐藏的Label,利用其Text属性作为窗口级别的变量。

 

当然你愿意的话,也可以全部采用内部函数全局变量,这没有什么不好,看你的习惯,本节只是为了给大家多一个选择。


 回到顶部
帅哥哟,离线,有人找我吗?
bahamute
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2014/2/27 9:45:00 [只看该作者]

我本来认为只要窗体没有关闭,变量应该是有效的,可以被调用,看来理解有误。

 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12117 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2014/2/27 10:02:00 [只看该作者]

凑一脚

 

 

还有一种方法

 

窗口初始

Dim a As Integer
e.Form.panel.tag = a

 

 

调用时
Dim a As Integer = e.Form.panel.tag


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/2/27 10:20:00 [只看该作者]

俺就喜欢偷懒:用e.Form.Text传来传去。

 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12117 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2014/2/27 10:38:00 [只看该作者]

我最喜欢用TextBox来传递,既能传值,又有事件

 回到顶部