注册 登录
编程论坛 VB.NET论坛

请问怎么用代码判断一个窗体是否已经启动

mp654k 发布于 2011-07-15 18:09, 5325 次点击
请问怎么用代码判断一个窗体是否已经启动 并且不使用全局变量标记
7 回复
#2
mp654k2011-07-15 18:12
知道了 可以用这个IsHandleCreated
#3
mp654k2011-07-15 18:14
但是我发现如果这个窗体的visible是false的话 IsHandleCreated还是false 有其他办法吗
#4
不说也罢2011-07-15 18:32
在你自已的项目中,你可以自由控制进行判断的呀。If Form2 Is Nothing这样也可以的。
不过,.net下建议调用窗体时首先进行实例化。如dim a as new form2 ,但这样子的话就不得不用全局变量进行判断了。
如果你找到更好的办法,请一起分享。
#5
mp654k2011-07-15 18:38
"If Form2 Is Nothing" 确实可以 感谢
#6
不说也罢2011-07-15 20:51
不用客气啊。但我仍然建议你,在访问窗体之前进行窗体实例化。因为在.NET框架下编程与VB6下编程是两码事。

在.NET中,假如你的项目中有多处代码访问同一窗体的话,新创建的窗体实例就不再是原先的窗体了
所以,用全局变量标记进行判断还是很有必要的。

在你做一个相对较大的项目出现不得其解的错误时,上面的建议可能能帮到你。
#7
mp654k2011-07-16 19:52
嗯 我还是发现 "If Form2 Is Nothing" 不行
如果是form2打开一次再关闭的话 Form2 Is Nothing是false
#8
茅市2013-06-12 02:26
用timer空间不停的获取form2的句柄。。
1