送分100分:怎么在一个窗体显示前将其关闭。
在主窗体中调用一个子窗体,而在子窗体的LOAD中添加了一些判断,当某个条件不满足时,就让这个子窗体在显示之前退出,当然也不会显示这个子窗体了,但是我直接加了一个UNLOAD ME,却提示“对象已卸载”。具体代码如下:
主窗体:
Private Sub Command1_Click()
Form2.Show 1
End Sub
子窗体:
Private Sub Form_Load()
Unload Me
End Sub
如何实现我的想法。
--------------------编程问答--------------------
Private Sub Command1_Click()--------------------编程问答-------------------- 这样如何
If XXX Then 'Form2加载条件判断
Form2.Show
End If
End Sub
Option Explicit--------------------编程问答-------------------- 为什么不开始就不让它显示呢 --------------------编程问答-------------------- Private Sub Form_Activate()
Private fNoNeedLoad As Boolean
Private Sub Form_GotFocus()
If fNoNeedLoad Then
Unload Me
End If
End Sub
Private Sub Form_Load()
fNoNeedLoad = True
End Sub
Unload Me
End Sub
--------------------编程问答--------------------
这个简单。 --------------------编程问答-------------------- 不要在Form2中写条件,这样窗体会闪烁.在Form1中写条件:
'Form1的窗体代码--------------------编程问答-------------------- ....................... --------------------编程问答-------------------- --------------------编程问答-------------------- 1,没进入窗体就判断
Option Explicit
Public BP As Boolean
Private Sub Command1_Click()
BP = False 'True
If BP Then
Form2.Show 1
Else
Unload Form2
End If
End Sub
2,form2.hide
3,Form_Activate 中写unload --------------------编程问答--------------------
这个才是正确思路和一贯作法 --------------------编程问答-------------------- ......................... --------------------编程问答--------------------
这样和直接不show有区别吗?
--------------------编程问答-------------------- BP永远为false --------------------编程问答--------------------
BP根据需要,是可变的,那就是楼主自己的事了!
补充:VB , 网络编程