【发布时间】:2019-03-20 21:07:33
【问题描述】:
我有一个包含无模式对话框的视图。
除了与对话框交互发送消息以修改当前活动视图上的对象外,一切正常。当我切换到新视图或另一个视图时,它会导致崩溃,因为该对象不存在于该新视图中。
想问一下切换视图时如何关闭无模式对话框?
应该在视图类还是文档类中处理?
消息路径为Dialog -> 发送用户定义消息 -> 主机 -> 获取当前活动视图 -> 传递消息 -> 查看消息句柄接收消息
谢谢
【问题讨论】:
-
如果您创建非模态对话框作为 CView 类的成员和子类,那么一切都是自动的。它会随着景色来来去去。您是在框架中创建它还是什么?否则,你确定你的崩溃是因为对话框吗?堆栈是什么样的?
-
@lakeweb 我是新手。如何将对话框创建为视图的成员和子项?我所做的只是在视图类中使用 CMyDialog*(extends CDialog) 并在需要时调用新的 CMyDialog()、Create() 函数。创建对话框时是否需要指定其父视图?
标签: c++ mfc visual-c++-2010