窗体1 FrmLoginPrivate Sub Form_Load()
If Adodc1.Recordset.RecordCount > 0 Then
......
Else
Unload Me
FrmAddUser.Show
End If
End Sub窗体2 FrmAddUserPrivate Sub Form_Unload(Cancel As Integer)
FrmUser.Adodc1.Refresh
If FrmUser.Adodc1.Recordset.RecordCount > 0 Then
Unload Me
FrmLogin.Show
Else
End
End If
End SubPrivate Sub Command2_Click()
Unload Me
End Sub以上代码其它没有问题,但如果运行到窗体2 FrmAddUser的FrmLogin.Show这里
这时点FrmLogin窗体的关闭我的程序并没有真正结束,请问是怎么回事?谢谢。PS:FrmLogin不能添加Form_Unload的End,因为这是登陆窗口,还要调用别的窗体。
If Adodc1.Recordset.RecordCount > 0 Then
......
Else
Unload Me
FrmAddUser.Show
End If
End Sub窗体2 FrmAddUserPrivate Sub Form_Unload(Cancel As Integer)
FrmUser.Adodc1.Refresh
If FrmUser.Adodc1.Recordset.RecordCount > 0 Then
Unload Me
FrmLogin.Show
Else
End
End If
End SubPrivate Sub Command2_Click()
Unload Me
End Sub以上代码其它没有问题,但如果运行到窗体2 FrmAddUser的FrmLogin.Show这里
这时点FrmLogin窗体的关闭我的程序并没有真正结束,请问是怎么回事?谢谢。PS:FrmLogin不能添加Form_Unload的End,因为这是登陆窗口,还要调用别的窗体。
FrmLogin为登录窗口 如果数据库无用户则关闭自身弹出FrmAddUser添加用户窗口~~~无问题
FrmAddUser为添加用户窗口 如果数据库无用户点关闭则关闭自身~~~无问题
FrmAddUser为添加用户窗口 如果数据库有用户点关闭则关闭自身弹出FrmLogin登录窗口~~~无问题FrmAddUser为添加用户窗口 如果数据库有用户点command2或关闭则关闭自身弹出FrmLogin登录窗口~~~现在点击FrmLogin登录窗口的关闭FrmLogin窗体~窗体是关闭了但我的程序并没有真正结束
Unload Forms(i)
Next i
试下
Cancel = -1
End Sub
unload FrmLogin
unload FrmAddUser
set frmlogin=nothing
set frmadduser=nothing
end
'不会死不了了吧..
'呵呵..我XXXX我XXX他一万次...呵呵...
FrmUser.Adodc1.Refresh运行到FrmLogin.Show时,由于FrmUser.Adodc1.Refresh这句话,窗体FrmUser被Load了,只是不是可见的但是关闭FrmAddUser时只有FrmAddUser被UnLoad了,FrmUser还在运行,所以 在FrmAddUser的中的 UnLoad Me 后应加上 UnLoad FrmUser或者如 ceagle(do my best!)所说
加上
For i = 0 To Forms.Count - 1
Unload Forms(i)
Next i
若加载了,则置为ture
卸载则置为False
卸载时判断标志变量的真假就行了,根据标志变量的真假来执行unload语句
FrmAddUser.Show 的顺序倒一下,先让FrmAddUser.Show 然后unload me下面那个窗口也同理试试看