着急!!!
点了窗体右上角的关闭后在屏幕上看不到程序了,但是打开任务管理器还能看见这个程序在运行,怎么回事?
谢谢大家,帮忙了。

解决方案 »

  1.   

    很简单的哦。Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
        Hide
        Cancel = True
    End Sub
      

  2.   

    谁人写地程序啊。 说明在你点右上脚地关闭后,该程序只是hide了,并未真正地关闭。
    建议你贴源代码看看。
      

  3.   

    你试试这个
    '一个窗体
    Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    Me.Visible = False
    Cancel = True
    End Sub
      

  4.   

    是不是数据库没有关闭?
    你试试这个:Private Sub Form_Unload(Cancel As Integer) 
       On Error Resume Next    Dim ws As Workspace 
       Dim db As Database 
       Dim rs As Recordset For Each ws In Workspaces 
    For Each db In ws.Databases 
    For Each rs In db.Recordsets 
    rs.Close 
    Set rs = Nothing 
    Next 
    db.Close 
    Set db = Nothing 
    Next 
    ws.Close 
    Set ws = Nothing 
    Next End Sub
      

  5.   

    这是个主程序,其中调用了很多*.dll,每次表面上看是关闭程序了,可是打开任务管理器那个程序还是在运行,怎么办啊?
    着急ing…………
    谁解决了马上给分!!
      

  6.   

    估计没有Unload所有用到的窗体
      

  7.   

    窗体UNLOAD完了是肯定的,还右没有别的可能?
      

  8.   

    出现这种情况的原因有多种:1.用的是HIDE隐藏窗口2.程序中有死循环,并且循环体中有DOEVENTS语句,3.程序退出的代码中有释放内存的语句,不地在释放的时候出现错误,而且该过程中有ON ERROR RESUME NEXT错误处理语句!!4.程序中有TIMER控件,退出的时候没有使TIMER停止……原因很多,不一一列列举~~~
      

  9.   

    如果程序中引用的对象没有被释放,窗体是不会卸载的
    强行卸载可以
    Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    end
    End Sub
      

  10.   

    程序启动时出现一个闪屏,然后闪屏窗体种TIMER不停在读主窗体的加载情况,当主窗体加载完成后,卸载闪屏(这里用的的me.hide),然后出现主窗口,这里会不会有什么问题啊
      

  11.   

    有这样一种错误,也会导致这样的情况,比较容易忽略:在一个甲窗体中调用了另一个乙窗体中的对象或变量,但是乙窗体没有被加载过,这时就会加载乙窗体,但是一般不会想到去关闭它,所以在关闭程序前,用Unload把所有窗体都关掉试试.
      

  12.   

    Unload把所有窗体都关掉?具体怎么实现啊?
      

  13.   

    Public Sub Shutdown(Optional ByVal Force As Boolean = False)
    '卸载所有窗体
    Dim i As Long
    On Error Resume Next
    For i = Forms.Count - 1 To 0 Step -1
    Unload Forms(i)
    If Not Force Then
    If Forms.Count > i Then
    Exit Sub
    End If
    End If
    Next i
    If Force Or (Forms.Count = 0) Then Close
    If Force Or (Forms.Count > 0) Then End
    End Sub
    Private Sub Form_Unload(cancel As Integer)
    '彻底卸载所有窗体并退出程序
    Shutdown (True)
    End Sub