BOOL XXXX::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
if (!m_wndSplitter1.CreateStatic(this, 1, 2))
{
return FALSE;
}
if (!m_wndSplitter1.CreateView(0, 0, RUNTIME_CLASS(CGameView), CSize(500, 0), pContext) )
{
m_wndSplitter1.DestroyWindow();
return FALSE;
} if (!m_wndSplitter2.CreateStatic(&m_wndSplitter1, 2, 1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0, 1)))
{
return FALSE;
}
if (!m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(CClientView), CSize(600, 300), pContext) ||
!m_wndSplitter2.CreateView(1, 0, RUNTIME_CLASS(CSysMsgView), CSize(600, 0), pContext))
{
m_wndSplitter2.DestroyWindow();
return FALSE;
} return CFrameWnd::OnCreateClient(lpcs, pContext);
}
_______________
| |
| |
|_______|
| |
| |
______|_______|最后我要得到右下角的视图:
CWnd* pWnd = m_wndSplitter2.GetPane(1, 0);
CXXXXView* pView = DYNAMIC_DOWNCAST(CXXXXView, pWnd);
return pView;这样为什么会出错呢??我调到
CWnd* CSplitterWnd::GetPane(int row, int col) const
{
ASSERT_VALID(this); <--------------出错XXXXXXXXXXXXXXXXXXXXX CWnd* pView = GetDlgItem(IdFromRowCol(row, col));
ASSERT(pView != NULL); // panes can be a CWnd, but are usually CViews
return pView;
}
{
if (!m_wndSplitter1.CreateStatic(this, 1, 2))
{
return FALSE;
}
if (!m_wndSplitter1.CreateView(0, 0, RUNTIME_CLASS(CGameView), CSize(500, 0), pContext) )
{
m_wndSplitter1.DestroyWindow();
return FALSE;
} if (!m_wndSplitter2.CreateStatic(&m_wndSplitter1, 2, 1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0, 1)))
{
return FALSE;
}
if (!m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(CClientView), CSize(600, 300), pContext) ||
!m_wndSplitter2.CreateView(1, 0, RUNTIME_CLASS(CSysMsgView), CSize(600, 0), pContext))
{
m_wndSplitter2.DestroyWindow();
return FALSE;
} return CFrameWnd::OnCreateClient(lpcs, pContext);
}
_______________
| |
| |
|_______|
| |
| |
______|_______|最后我要得到右下角的视图:
CWnd* pWnd = m_wndSplitter2.GetPane(1, 0);
CXXXXView* pView = DYNAMIC_DOWNCAST(CXXXXView, pWnd);
return pView;这样为什么会出错呢??我调到
CWnd* CSplitterWnd::GetPane(int row, int col) const
{
ASSERT_VALID(this); <--------------出错XXXXXXXXXXXXXXXXXXXXX CWnd* pView = GetDlgItem(IdFromRowCol(row, col));
ASSERT(pView != NULL); // panes can be a CWnd, but are usually CViews
return pView;
}
解决方案 »
- setup factory注册mscomm控件
- 使用DeviceIoControl不能读取到数据。
- MFC下怎么创建notepad.exe进程打开指定的txt文件
- 编译DEBUG版本的时候没有问题,但是在编译RELEASE版的时候出现了一个警告
- ===网络音频视频传输 疑问?===
- 文件删除问题。
- 怎样写后台服务程序阿
- (注:UP者有分)请问各位高手,怎样才能向与计算机串口相连的手机发送铃声和待机图片?我已经知道了怎样发送短信,但铃声和待机图片怎么
- 看了学用vc6.0后想深入学习一下vc请给介绍一不经典的书好吗?
- MFC 中怎么样获取子节点的双击消息?
- 有没有实现VB右下方属性窗口的类??
- 这都会出错?
return TRUE;
return TRUE;
return TRUE;这样也不行呀?这应该和那个没关系呀!