VB对话框弹出来状态,定时器END结束程序时报错怎么解决?
vb吧
全部回复
仅看楼主
level 1
塘下说 楼主
就是有一个程序,到了指定时间自动END,但是之前弹出来的对话框还没有手动关闭,结果点击关闭后,程序弹出内存错误,请问如何解决这个问题?
2025年06月12日 10点06分 1
level 9
内存错误比较奇怪,不过你应该在主页面的Form_unload那里处理卸载,把其它加载的页面卸载掉,不应该用End。
2025年06月13日 01点06分 2
但是Form2如果有对话框弹出来没点掉的话,通过FOMR1的代码你是无法卸载它的
2025年06月15日 08点06分
@塘下说 如果你的弹出框是MsgBox,那么程序是挂起的。你可能用的API计时,内存错误应该和MsgBox无关,是程序强制退出造成的,而顺序卸载就不会出错。
2025年06月16日 08点06分
level 1
我是写vc的,遇到过类似的问题,点改变按钮,如果有未保存的内容,会提示是否保存,按是或者否都正常,但是按取消就内存错误,原因是代码不正确,在destroywindow函数后才弹出的对话框,按取消要回到主窗口,那自然出错了。估计你这个问题是一样的,定时器到了结束程序,主窗口已经销毁,所以子窗口关闭的时候试图回到主窗口,就内存访问错误了,要么定时器结束的时候,检查是否打开了子窗口,要么子窗口关闭的时候检查主窗口是否存在,建议在子窗口检查。
2025年06月14日 10点06分 3
或者用简单粗暴的方法,直接结束进程,这样所有的窗口都会被关闭。
2025年06月14日 11点06分
应该是这样的
2025年06月16日 08点06分
level 5
unload form2
unload me
2025年09月12日 04点09分 4
1