避免VFP中出现“Cannot Quit Visual FoxPro”

一、出现“Cannot Quit Visual FoxPro”的原因
  第一种原因是:在执行了read event后,read event事件处于活动状态,此时,试图使用系统窗口的关闭按钮退出Visual FoxPro(或Visual FoxPro编写的应用,以下同),则会出现“Cannot Quit Visual FoxPro”。
  在Visual FoxPro3.0中,即使read event事件处于活动状态时,也可以调用Quit直接退出。但是,在Visual FoxPro5.0中,当read event事件处于活动状态时调用Quit则不行,就会出现“Cannot Quit Visual FoxPro”。应先执行clear event关闭read event事件,然后才能正常退出。
  另一种原因是:在Visual FoxPro5.0中,如果在还有活动表单的情况下,无论使用系统窗口的关闭按钮,还是调用Quit,都会出现“Cannot Quit Visual FoxPro”。这时,要正常退出,必须先关闭活动的表单。
  二、避免出现“Cannot Quit Visual FoxPro”的方法
  要避免出现“Cannot Quit Visual FoxPro”,在欲退出之前,要先执行clear event。在Visual FoxPro5.0中还要先关闭活动的表单。
  在Visual FoxPro3.0中,在程序的开头可以加上
  ON SHUTDOWN QUIT
  这样,在欲退出Visual FoxPro时,程序自动直接调用Quit退出,避免出现“Cannot Quit Visual FoxPro”。
  在Visual FoxPro5.0中,程序的开头可以加上类似以下的程序
  ON SHUTDOWN DO MyQuit
  PROC MyQuit
  CLEAR Event
  IF _SCREEN.cFormCount>0
     DIME TmpForm[—SCREEN.FormCount]
     FOR i=1 TO —SCREEN.FormCount
         TmpForm[i]=—SCREEN.Forms(i)
     ENDFOR
     FOR i=1 TO —SCREEN.FormCount
         TmpForm[i].Release
     ENDFOR
  ENDIF
  QUIT
  这样,在欲退出Visual FoxPro时,程序先自动清除read event事件,关闭所有的表单,然后调用Quit正常退出。  
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值