MFC切分窗口后,原来的视图是否被隐藏了
MFC切分窗口后,原来的视图是不是被隐藏了?
用向导创建了一个单文档的应用程序,在CMainFrame中添加OnCreateClient虚函数,在里面建立两个切分窗口:
其中View1和View2基类为CFormView。程序正常运行,显示两个自己的View1和View2,我想问的是:
1 那向导自己生成的那个View(因为工程名为CSplitterTest,所以视图为CSplitterTestView)没有显示出来,是不是被View1和view2给覆盖了?
2 我想把View1或View2给删除了,看看是不是看见向导建立CSplitterTestView,可是删除就出错,是不是一个区域内一定要有个View,没有就出错?
3 我想把其中一个窗口用来显示向导建立的CSplitterTestView,为什么会提示未定义,如果把CSplitterTestView的头文件加进来,在头文件中又会出现这样的错误:
error C2143: syntax error : missing ';' before '*'
error C2501: 'CSplitterTestDoc' : missing storage-class or type specifiers
这些错误在头文件中都不是错误?
------解决方案--------------------
CSplitterTestView视图窗口没有创建,你Debug下OnCreateClient中的CMainFrame::OnCreateClient(),F11进去看看就知道了。
------解决方案--------------------
return TRUE;
本来应该 是 CFrameWnd :: 即 CMainFrame 的 父窗口 , 不能是 CMainFrame:: 否则是递归
用向导创建了一个单文档的应用程序,在CMainFrame中添加OnCreateClient虚函数,在里面建立两个切分窗口:
m_wndSplitter.CreateStatic(this,1,2);
CRect ClientRect;
GetClientRect(&ClientRect);
m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(View1),CSize(ClientRect.Width()/4,ClientRect.Height()),pContext);
m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(View2),CSize((ClientRect.Width()/4)*3,ClientRect.Height()),pContext);
其中View1和View2基类为CFormView。程序正常运行,显示两个自己的View1和View2,我想问的是:
1 那向导自己生成的那个View(因为工程名为CSplitterTest,所以视图为CSplitterTestView)没有显示出来,是不是被View1和view2给覆盖了?
2 我想把View1或View2给删除了,看看是不是看见向导建立CSplitterTestView,可是删除就出错,是不是一个区域内一定要有个View,没有就出错?
3 我想把其中一个窗口用来显示向导建立的CSplitterTestView,为什么会提示未定义,如果把CSplitterTestView的头文件加进来,在头文件中又会出现这样的错误:
error C2143: syntax error : missing ';' before '*'
error C2501: 'CSplitterTestDoc' : missing storage-class or type specifiers
这些错误在头文件中都不是错误?
------解决方案--------------------
CSplitterTestView视图窗口没有创建,你Debug下OnCreateClient中的CMainFrame::OnCreateClient(),F11进去看看就知道了。
------解决方案--------------------
return TRUE;
本来应该 是 CFrameWnd :: 即 CMainFrame 的 父窗口 , 不能是 CMainFrame:: 否则是递归