VB中如何设置退出提示窗口

tiger_zl 2000-03-10 10:19:00
最近遍的一个程序,在用户选择退出该程序(frmMain)时(可以是通过窗口的控制菜单中的退出),用一个 frmExitPromt (不是MDI子窗口)提示用户是否每次推出时都提示,当frmMain是非最小化时能正常推出,可当frmMain在最小化退出时,弹出frmExitPromt就没反应了,此时frmExitPromt变灰。另外,因为每次退出时要作些数据库维护工作,所以在frmMain的Form_QueryUnload事件中弹出frmExitPromt的,请高手指教!
...全文
445 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiger_zl 2000-03-15
  • 打赏
  • 举报
回复
感谢各位的大力支持!
大家的方法我都试过,不过都不行,我采取了折中的办法:当窗口处于最小化状态,要关闭应用程序时强行使窗口最大化!
再次感谢!
thriller 2000-03-10
  • 打赏
  • 举报
回复
加个Doevents时试试。
再就是,如果直接.Show, 则程序继续运行(即退出),否则,等待至弹出窗口关闭。
建议:
frmExitPrompt.show 1
if saveit then
...
else
...
endif
if quitit then
...
else
cancel=true
endif
process_savethings.
Un1 2000-03-10
  • 打赏
  • 举报
回复
我好象也碰到这个问题,不过没有解决,只有先判断如果Form是最小化就在QuecyUnload里把Cancel设为True取消请求。
tiger_zl 2000-03-10
  • 打赏
  • 举报
回复
感谢各位的回复。
这里我要重声一下:frmMain在最小化退出该程序时,frmExitPromt弹出就变灰了,好象一直在处理什么,而真正的数据库维护是在frmMain的form_unload中作的。在单步执行时不会发生这样的事情
sythree 2000-03-10
  • 打赏
  • 举报
回复
建议退出前先检查数据库是否被修改:是,弹出才警告窗口。用API函数取得frmMain
的句柄,然后截获并处理WM_CLOSE消息。
thriller 2000-03-10
  • 打赏
  • 举报
回复
是不是弹出方式的问题。
试用非模态窗口。
或者监视WM_CLOSE或WM_SYSCOMMAND消息。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧