你试试看在unload 事件中加入load me 看看,有没有效果!

解决方案 »

  1.   

    form_unload(byval cancel as long)
    cancel=true
    end sub
    这样可以,
    或者你在子窗体的Unload事件中加入同样的代码也可以。
    MDIForm是先Unload子窗体才调用自身的Unload事件的。
      

  2.   

    谢谢你feihong0233,你的办法虽然不太好,但是还能解决一半的问题,
    分我一定会给的,
    谁还又更好的办法吗?
      

  3.   

    我这有个源程序
    可在关闭按钮那一栏中加入一个按钮
    即然能加入也就能删拉
    那个东东我看不大懂
    如果你需要,
    留下email或qq我发给你那东东
    不过学会了要教我~:)
      

  4.   

    感谢您使用微软产品。如果您想使Form的关闭按钮无效,您可以参考以下文章中的方法:
    http://support.microsoft.com/support/kb/articles/Q184/6/86.ASP - 微软亚洲技术中心 VB技术支持本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款 (http://www.csdn.net/microsoft/terms.shtm)。
      

  5.   

        用controlbox属性可以控制关闭按钮,
        用maxinuim和mininuim两个属性可以控制最大化和最小化按钮,
        另外,牵涉到窗体外观的几个属性如显示形式,是否允许拖动啊之类,
        希望查一查相关的VB的资料。    加分!!!!!
      

  6.   

    我查了一下资料,好象MDIFORM不支持以上三个属性。
    不过上网不方便,找到答案我再给你贴过来。
      

  7.   

    这些天谢谢大家的帮忙,这个问题我已经彻底的解决了,为了
    以后大家会遇到同样的问题,我简单的介绍一下我的程序.
    程序中加了一个command按钮,退出程序是用的,原代码如下
    Option Explicit
    Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
    Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
    Private Const MF_BYPOSITION = &H400&
    'rivate ReadyToClose As Boolean'下面的过程是屏蔽菜单的功能,响应的给变量负值就可以屏蔽菜但了
    Private Sub RemoveMenus(frm As Form, _
                            remove_restore As Boolean, _
                            remove_move As Boolean, _
                            remove_size As Boolean, _
                            remove_minimize As Boolean, _
                            remove_maximize As Boolean, _
                            remove_seperator As Boolean, _
                            remove_close As Boolean)
    Dim hMenu As Long
        '得到响应的系统菜单,这里是的到该窗体的菜单,
            hMenu = GetSystemMenu(hwnd, False)
        '下面是响应的屏蔽系统彩旦的功能
            If remove_close Then DeleteMenu hMenu, 6, MF_BYPOSITION
            If remove_seperator Then DeleteMenu hMenu, 5, MF_BYPOSITION
            If remove_maximize Then DeleteMenu hMenu, 4, MF_BYPOSITION
            If remove_minimize Then DeleteMenu hMenu, 3, MF_BYPOSITION
            If remove_size Then DeleteMenu hMenu, 2, MF_BYPOSITION
            If remove_move Then DeleteMenu hMenu, 1, MF_BYPOSITION
            If remove_restore Then DeleteMenu hMenu, 0, MF_BYPOSITION
    End SubPrivate Sub Command1_Click()
    End
    End SubPrivate Sub Form_Load()
    RemoveMenus Me, True, True, True, True, True, True, True
    End Sub