Mfc 在CDockablePane中添加CDialog,应用程序将失去响应
我想在Mfc 在CDockablePane中添加CDialog,应用程序将失去响应,mfc,Mfc,我想在CDockablePane中添加一个CDialog控件。当我使用CDialog.DoModal()显示对话框窗口时,它会使MFC应用程序无响应并等待CDialog结果 如何使应用程序显示对话框并继续运行而不等待CDialog结果 不能使用DoModal显示对话框。这将显示一个模式对话框,该对话框将阻止与应用程序中的任何其他窗口进行交互,直到该对话框被取消。就像消息框一样 要显示非模式对话框,请调用Create成员函数。使用CDockablePane的实例作为对话框的父级。您还需要确保对话框
CDockablePane
中添加一个CDialog
控件。当我使用CDialog.DoModal()
显示对话框窗口时,它会使MFC应用程序无响应并等待CDialog
结果
如何使应用程序显示对话框并继续运行而不等待
CDialog
结果 不能使用DoModal
显示对话框。这将显示一个模式对话框,该对话框将阻止与应用程序中的任何其他窗口进行交互,直到该对话框被取消。就像消息框一样
要显示非模式对话框,请调用Create
成员函数。使用CDockablePane
的实例作为对话框的父级。您还需要确保对话框本身是一个子窗口,没有边框
使用从
CFormView
或CPaneDialog
派生的类可能更容易。感谢您的回答,现在我使用的是从CPaneDialog
派生的类,如您所建议的:m\u DlgInsidePane.Create(\u T(“指南”),此,FALSE,IDD|u DLG|u TEST|u在|u窗格中,WS|u CHILD | WS|u VISIBLE | WS|u CLIPSIBLINGS | WS|u CLIPCHILDREN | CBRS|u LEFT | CBRS| u FLOAT|u MULTI,0)
,但该对话框未显示@创建后添加:m_DlgInsidePane.ShowWindow(SW_SHOW);