CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

点击右上角的关闭按钮,程序没有正常退出而是发生崩溃(遇到问题需要关闭)

楼主fengyin520(fy)2006-03-03 12:00:01 在 VB / 基础类 提问

我的程序是这样的:一个数据库(access),一个主窗体(MDI窗体),7个子窗体(MDI子窗体)  
  7个子窗体的功能都是查询数据库里的对应的表,并显示在表格中,7个子窗体的load里用的代码  
  都是这样的  
  Private   Sub   Form_Load()  
  Dim   txtSQL   As   String  
  Dim   TxtMsg   As   String  
  Dim   mrc   As   ADODB.Recordset  
   
  txtSQL   =   "select   *   from   读者   ORDER   BY   编号   ASC"  
  Set   mrc   =   ExecuteSQL(txtSQL,   TxtMsg)  
  Set   VSGrid.DataSource   =   mrc  
  lblCount.Caption   =   TxtMsg  
  End   Sub  
   
  区别就是select语句中的   表名   不同而已  
  发生问题的时候是当1,2,3,4,5子窗体都打开的时候,点击关闭程序会崩溃,  
  而当1,2,3,4,5中关闭除了5之外的其他任何一个子窗体,程序都不会发生崩溃  
  只要不打开5,其他窗体不管打开几个都不会出问题  
  6,7也打开的时候,只要1,2,3,4有一个没打开就不会出问题。  
  当打开窗口的顺序是这样的时候不发生错误5,4,3,2,1  
  其中1和4查询同一个表,2和5查询同一个表  
   
  我在程序主界面上做一个退出按钮如果代码写上unload   me   也会崩溃  
  我只有写成这样不会崩溃  
  unload   1  
  unload   2  
  unload   3  
  unload   4  
  unload   5  
  unload   6  
  unload   7  
  unload   me  
  但是当点主程序右上角的关闭钮还是会崩溃,请高手帮我分析分析原因,我找了很久就是找不着原因,  
  虽然是退出的时候发生的错误,对程序没什么影响,但是心里肯定是别扭  
  问题点数:20、回复次数:3Top

1 楼WallesCai(女人之美,在于蠢得无怨无悔,男人之美,在于撒谎撒得白日见鬼)回复于 2006-03-03 12:22:16 得分 5

如果你的每一个窗体都有数据库连接的话,最好还是先关闭所有窗体再退出程序.  
  可以把所有窗体定义成数组,然后在MDI窗体的退出事件中用循环来关闭每一个窗体,在退出程序.  
   
  在每一个窗体的退出事件中要写好断开数据库的代码.Top

2 楼faysky2(出来混,迟早是要还嘀)回复于 2006-03-03 12:31:34 得分 10

主截面关闭时,关闭所有打开的窗体(最好在关闭子窗体时,断开数据库的连接,并释放所创建的对象):  
  Private   Sub   Form_Unload(Cancel   As   Integer)  
          Dim   f   As   Form  
          For   Each   f   In   Forms  
                  If   f.Name   <>   Me.Name   Then   Unload   f  
          Next  
          Unload   Me  
  End   SubTop

3 楼njxl()回复于 2006-03-03 13:31:35 得分 5

Private   Sub   Form_Unload(Cancel   As   Integer)  
          End  
  End   Sub  
   
   
   
  or    
          if   form1.rs   is   open   then   rs.close()  
          .............................Top

相关问题

  • 在用户单击窗体有上角退出按钮的时候,怎样弹出对话框询问用户是否对出??
  • 如何通过一个按钮退出程序
  • 找几个按钮图标:退出,打印预览,打印
  • 如何做一个可以退出程序的按钮??
  • 如何通过按钮退出.aspx页面?
  • 关于用户点击退出按钮的问题.
  • 怎样用一个按钮控制do while循环终止?即按一下按钮退出循环
  • 用户总是需要点击两次退出按钮才能退出,请高手帮忙
  • 如何在用户点击“退出”按钮的时候清空Session("UserName")?
  • Applicaton.MessageBox(...MB_YESNOCANCEL..) 点Yes按钮会退出,请高手进来帮帮忙

关键词

  • 数据库
  • 代码
  • me
  • 窗体
  • unload
  • 关闭
  • 崩溃
  • 退出
  • 程序
  • 打开

得分解答快速导航

  • 帖主:fengyin520
  • WallesCai
  • faysky2
  • njxl

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo