在CMainFrame中加入
protected:
CSplitterWnd m_wndSplitter;
重载OnCreateClient()函数。
将OnCreateClient改为
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
CCreateContext* pContext)
{
m_wndSplitter.CreateStatic(this, 2, 1));
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CFirstView),
CSize(100, 100), pContext));
m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CSecondView),
CSize(100, 100), pContext));
return TRUE;
}CFirstView 各CSecondView 如果相同就是为一个View构造两个窗口,
如果需要另一个View,可从CView中派生,之后将新View的头方件
include进MainFram.cpp中就可以了。
protected:
CSplitterWnd m_wndSplitter;
重载OnCreateClient()函数。
将OnCreateClient改为
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
CCreateContext* pContext)
{
m_wndSplitter.CreateStatic(this, 2, 1));
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CFirstView),
CSize(100, 100), pContext));
m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CSecondView),
CSize(100, 100), pContext));
return TRUE;
}CFirstView 各CSecondView 如果相同就是为一个View构造两个窗口,
如果需要另一个View,可从CView中派生,之后将新View的头方件
include进MainFram.cpp中就可以了。
可在上面所说的基础上,在return true;之前用SetActiveView((CView*)m_wndSplitter.GetPane(0,1));来激活第一个视图,之后在文档类中来控制另一个视图即可
d:\demo\demoview.h(21) : error C2143: syntax error : missing ';' before '*'
d:\demo\demoview.h(21) : error C2501: 'CDemoDoc' : missing storage-class or type specifiers
d:\demo\demoview.h(21) : error C2501: 'GetDocument' : missing storage-class or type specifiers
D:\demo\MainFrm.cpp(115) : error C2059: syntax error : ')'
D:\demo\MainFrm.cpp(116) : error C2059: syntax error : ')'
d:\demo\demoview.h(21) : error C2143: syntax error : missing ';' before '*'
d:\demo\demoview.h(21) : error C2501: 'CDemoDoc' : missing storage-class or type specifiers
d:\demo\demoview.h(21) : error C2501: 'GetDocument' : missing storage-class or type specifiers好象原来框架生成的视图类中的GetDocument成员函数有问题
但是我没有修改过它,不知道为什么会这样
#include "demoDoc.h"
全部换成你的原来的文档类名,并在demoview.h中加入包含原来文档头
文件的语句。
但是我想要用到文档类怎么办?