关于 MFC 拆分视图的问题

hu110 2009-10-23 10:08:52
我建的是个 SDI,有视 图文档支持,
在MainFrm中的OnClient中我加了如下代码:

// TODO: 在此添加专用代码和/或调用基类
if(this->m_MySplitter.CreateStatic(this,2,2))
{
TRACE0("Failed to CreateStaticSplitter\n");
return FALSE;
}
if (!m_MySplitter.CreateView(0, 0,
RUNTIME_CLASS(CVSView), CSize(40, 40), pContext))
{
TRACE0("Failed to create first pane\n");
return FALSE;
}
if (!m_MySplitter.CreateView(0, 1,
RUNTIME_CLASS(CViewTwo), CSize(40, 40), pContext))
{
TRACE0("Failed to create second pane\n");
return FALSE;
}
if (!m_MySplitter.CreateView(1, 0,
RUNTIME_CLASS(CViewThree), CSize(40, 40), pContext))
{
TRACE0("Failed to create third pane\n");
return FALSE;
}
if (!m_MySplitter.CreateView(1, 1,
RUNTIME_CLASS(CViewFour), CSize(40, 40), pContext))
{
TRACE0("Failed to create fourth pane\n");
return FALSE;
}

MianFrm.h中:

protected:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
DECLARE_MESSAGE_MAP()
// 窗口拆分
CSplitterWnd m_MySplitter;


CViewOne~~~CViewFour,是我建的四个视图类,原来系统自个生成的那个视图我没用来填充~!

运行时显示:创建文档失败~!
是什么问题?

还有如果使四个分视图平分用户区?如用户区为800X800,则每个视图为400X400,如果搞??谢谢,如何固定他们的大小,使不能改变?

谢谢各位了~!
...全文
41 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hu110 2009-10-23
  • 打赏
  • 举报
回复
创建文档失败已经解决
这个忘了个!

if(this->m_MySplitter.CreateStatic(this,2,2))
{
TRACE0("Failed to CreateStaticSplitter\n");
return FALSE;
}


但现在的问题是,运行出来,只有一面白白的,并没有拆分,
那四个view都是继承于CView
谢谢
sb3day 2009-10-23
  • 打赏
  • 举报
回复
#include <afxcview.h>放到stdafx.h中
MoXiaoRab 2009-10-23
  • 打赏
  • 举报
回复
不想多说,按 这个

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧