MFC关于如何在CView中显示对话框

来源:百度知道 编辑:UC知道 时间:2024/06/20 15:37:46
我之前的程序定义好了一个界面,有一个对话框,一个树型结构和一个CHtmlView类框,领导要求在CHtmlView中显示一个已经做好的对话框!模态的!有高手指点一下吗?
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
CCreateContext* pContext)
{
//在此完成自己的分割
BOOL m_bCreateSplitter=m_wndSplitter.CreateStatic(this,1,2);
if(!m_bCreateSplitter) return FALSE;
m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CNavTree),CSize(180,100),pContext);
m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(CHtmlView),CSize(180,100),pContext);
SetActiveView((CView*)m_wndSplitter.GetPane(0,1));
CHtmlView *p=(CHtmlView *)m_wndSplitter.GetPane(0,1);
p->Navigate(URL,navAllowAutosearch);
return m_bCreateSplitter;
}
这段是前辈留下的分割代码.
其中CNavTree是树型框,不做考虑,怎么解决CHtmlView的重载.
仅仅是弹出的话,我早做出了,但是要求要在里面显示,头昏啊!

Frame里面只能加载CView或者由CView继承而来的子类,不能直接加载对话框。
你可以考虑弹出的方式加载对话框。或者将对话框的基类改成CFormView,在修改对应的位置,基本上就是初始化的几个消息要修改一下。

class CDlgView: public CFormView

只需要改几个消息的。