MFC+VTK关闭窗口的时候出现异常,有什么好的解决方法吗

yuer_xiao 2017-12-06 05:53:52
VTK中使用renWIn->setParentId(),当关闭应用程序的时候(确切点讲是点击关闭按钮,或者退出按钮,并不是真正退出应用程序),会发现应用程序的窗口消失了,然而,打开任务管理器发现,应用程序test.exe仍然存在,没有退出,也就是说,点击关闭时候发出的WM_CLOSE消息并没有进入Windows消息循环,从而也就没有进一步触发WM_QUIT,也便没有再进一步触发WM_DESTROY,从而是OnDestroy没有执行,因而,应用程序没有退出,只是窗口消失了而已.

以上出现的问题,实际上是因为,iren->start()之后便进入了vtk自带的消息循环之中,其他的什么都不管了,只管它自己的vtk窗口消息,点击应用程序的窗口之后,按理说,vtk这个renWin窗口也该关闭,并通知结束vtk的内部消息循环,而实际上并没有这么做,为什么呢? 原因就是, MFC控件和vtkRenderWindow* renWin之间并没有交互,只是通过一个句柄'贴'到MFC控件上而已,所以控件销毁之后也没有一个'通道'来通知renWin该结束了,所以renWin不结束,从而消息循环也不结束,使得MFC的消息无法得到响应(此时,只响应VTK内部的消息循环了,其他一概不管)

请问这个问题要怎么解决
...全文
870 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
windforce1210 2017-12-15
  • 打赏
  • 举报
回复
就是能够响应后续的消息了 跳出那个循环了吧
yuer_xiao 2017-12-13
  • 打赏
  • 举报
回复
引用 8 楼 windforce1210 的回复:
弄出来了 ! void CSegmentDlg::OnBnClickedOk() { // TODO: 在此添加控件通知处理程序代码 m_Segment_Win.Interactor->ExitCallback(); CDialogEx::OnOK(); } 在国外的一个论坛上看到的 http://vtk.1045678.n5.nabble.com/Stopping-the-vtkRenderWindowInteractor-td1236290.html
请问最后的效果是什么样的
windforce1210 2017-12-09
  • 打赏
  • 举报
回复
弄出来了 ! void CSegmentDlg::OnBnClickedOk() { // TODO: 在此添加控件通知处理程序代码 m_Segment_Win.Interactor->ExitCallback(); CDialogEx::OnOK(); } 在国外的一个论坛上看到的 http://vtk.1045678.n5.nabble.com/Stopping-the-vtkRenderWindowInteractor-td1236290.html
windforce1210 2017-12-09
  • 打赏
  • 举报
回复
问题是如何用代码来停止renWin,如果是个控制台程序,Interactor->Start()之后程序就卡在这个位置了 会跳出来一个vtk的窗体,手动关闭这个窗体,程序就往下走了! 我在想应该可以在MFC对话框的对话框上 加一个关闭的按钮,然后在按钮对应的函数里,通过代码关闭renWin 但是不知道怎么通过代码关闭renWin 试了好几个代码 都不起作用!你有啥办法没
windforce1210 2017-12-09
  • 打赏
  • 举报
回复
我遇到跟你同样的问题!不知道怎么解决!
yuer_xiao 2017-12-08
  • 打赏
  • 举报
回复
没有人遇到过相同的问题吗
yuer_xiao 2017-12-07
  • 打赏
  • 举报
回复
引用 2 楼 oyljerry 的回复:
指针异常了,不是aProp不是合法指针了
请问有什么好的解决方法吗
赵4老师 2017-12-07
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处,看不懂时双击下一行,直到能看懂为止
oyljerry 2017-12-07
  • 打赏
  • 举报
回复
指针异常了,不是aProp不是合法指针了
yuer_xiao 2017-12-06
  • 打赏
  • 举报
回复
关闭窗口后就会出现这样的情况

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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