vb窗体unload后,为什么变量值还存在?

窗体里定义的变量,当窗体unload后,再次打开,变量值还存在。请问为什么?该怎么彻底清空?... 窗体里定义的变量,当窗体unload后,再次打开,变量值还存在。
请问为什么?该怎么彻底清空?
展开
 我来答
远风的梦想家
2010-08-01 · TA获得超过2550个赞
知道大有可为答主
回答量:1389
采纳率:0%
帮助的人:0
展开全部
Unload 语句

从内存中卸载窗体或控件。

语法

Unload object

object 所在处是要卸载的 Form 对象或控件数组元素的名称。

说明

当所占内存另有它用,或需要重新设置窗体、控件的属性为初始值时,就有必要卸载窗体或控件。

在卸载窗体前,会发生 Query_Unload 事件过程,然后是 Form_Unload 事件过程。在其中任一过程中设置 cancel 参数为 True 可防止窗体被卸载。若为 MDIForm 对象,先发生 MDIForm 对象的 Query_Unload 事件过程,接着是各 MDI 子窗体 的 Query_Unload 事件过程和 Form_Unload 事件过程,最后是 MDIForm 对象的 Form_Unload 事件过程。

当窗体卸载之后,所有在运行时 放到该窗体上的控件都不再是可访问的。在设计时放到该窗体上的控件将保持不变;但是,当窗体重新加载时,在运行时对这些控件及其属性的任何更改将丢失。所有对于窗体属性的更改也将丢失。对窗体上任何控件的访问会导致窗体重新加载。

注意 在卸载窗体时,只有显示的部件被卸载。和该窗体模块相关联的代码还保持在内存中。

=================================

这是微软官方对unload命令的解释,注意最后一句话,代码还是在内存中存在的,所以无法卸载,如果非要释放这些变量,只能自己手动编写代码去清空它们 或者使用如下的方法去彻底卸载一个窗口

Unload Form1
Set Form1 = Nothing

第二步设置form1为nothing的时候会彻底从内存中移除form1对象,这样它关联的内存变量就再也不存在了
tianqing20wen

2010-08-01 · TA获得超过2.4万个赞
知道大有可为答主
回答量:8226
采纳率:88%
帮助的人:5126万
展开全部
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Set Form2 = Nothing
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式