MODULE就是模块~~~~~也就是说在一个工程中。资源是共享的。可以用任何一个窗体来访问这些资源
FORM 就是窗体~~~~~~~~~也就是说只要不申明成PUBLIC成员。也就是只在本窗体内的资源不是共享的。其它的窗体不能访问这个窗体中的资源~~~~~
STATIC是静态赋值语句~~~~~~~~也就是在工程的从开始到结束中。用STATIC申明的变量都是内存中保留空间的
而DIM申明的变量,只在本函数调用的时候或是本过程运行的时候。内存才为这些变量保留内存空间~~~~~~~~~~~~~~
FORM 就是窗体~~~~~~~~~也就是说只要不申明成PUBLIC成员。也就是只在本窗体内的资源不是共享的。其它的窗体不能访问这个窗体中的资源~~~~~
STATIC是静态赋值语句~~~~~~~~也就是在工程的从开始到结束中。用STATIC申明的变量都是内存中保留空间的
而DIM申明的变量,只在本函数调用的时候或是本过程运行的时候。内存才为这些变量保留内存空间~~~~~~~~~~~~~~
解决方案 »
- 求助VB与excel之间的互动问题
- “┌”该怎么处理
- 如下SQL语句有错吗
- vb 怎么断开与ACCESS数据库的连接?
- 在win2000/XP系统下如何锁键盘?
- 请求帮忙:急!
- 在OneForm窗体模块中定义如下:Public FormatForm As Boolean在TowMain窗体模块中应该怎么用这个全局变量?如果是Public FormatForm As
- 问题还没有解决为什么分就没了!!!!!!!!!
- 闭关,等7月份后毕业生走了再出来回答问题.
- 请教一下 VB6连接SQL SERVER2008的字符串写法
- 用VB程序上传文件的问题
- 高手的天堂:如何在VB中显示 *.dwg图形文件???
作用域分为 MODULE、FORM 、PROCEDURE
也就是这个意思:
MODULE可以整个程序都用,就是一个EXE文件
FORM 可以一个窗体用
PROCEDURE可以一个过程、函数用
在他的作用域以外,就是从新定义了!除非被保存
如果第二次进入的话,他也被从新定义了!除非被保存
数值变量重新设置为0,字符串变量被设置为空
小弟初学.不懂.能举例说明吗?
这是你的问题原文,我想上面两位没太看懂你的问题,我也许可以回答你的问题。
用Dim声明的变量,系统会为它临时给一个内存空间,因为这个空间是临时的,也就是说它的值如果发生某种特殊的变化,保存在里面的数据将会丢失,这样它就会重新设置它的值为零.如果这个值是String类型的会重新设置空白.
而用Static声明的变量,系统直接给它分配一个内存空间,这个值不会随便丢失,除非主程序Unload,另外如果在程序中这个值有任何变化,都将会重新写入到它里面去.
这两种情况下的声明各有各的用法,也各与各的好处,前者可以及时释放系统资源,后者便于一些特殊的控制.
其实这个问题比较简单,如果要说详细点,还真一下子说不过来,建议你找一些源代码来慢慢品尝他们的用法.
dim a as integer
msgbox "a=" & a
a = a+1
end subpublic sub F2()
static a as integer
msgbox "a=" & a
a = a+1
end subpublic sub main()
F1
F1
F1
F2
F2
F2
end sub三次调用F1,显示的结果都是0
三次调用F2,显示的结果分别为0、1、2对照体会一下……
private sub command1_click()
dim i as integer
msgbox i
i=i+1
end sub
private sub command2_click()
static i as integer
msgbox i
i=i+1
end sub
对按几次按钮1和按钮2看看结果,同楼上。