我想做三个view,一个在左边,另外两个在右边,且一个在上,一个在下,请问用SplitterWnd怎么实现 ??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext){ BOOL b_rtn = TRUE; if(m_spliter.CreateStatic(this,1,2)) // 在M { b_rtn = m_spliter.CreateView(0,0,RUNTIME_CLASS(CViewLeft),CSize(250,100),pContext); if(b_rtn) { b_rtn = m_spliter.CreateView(0,1,RUNTIME_CLASS(CViewRightUp),CSize(250,100),pContext); b_rtn = m_spliter.CreateView(1,1,RUNTIME_CLASS(CViewRightDown),CSize(250,100),pContext); } } else { m_spliter.DestroyWindow(); b_rtn = FALSE; } return b_rtn;} 还没写完就莫名其妙的提交:(// 在MainFrm.h 定义一个CSplitterWnd m_spliter;成员 试试这个:在主窗口类中声明两个CSplitterWnd的成员变量m_spHor和m_spVer;然后,重载CMainFram的OnCreateClient函数:BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { this->m_spVer.CreateStatic(this,1,2); this->m_spHor.CreateStatic(&m_spVer,2,1,WS_CHILD|WS_VISIBLE,m_spVer.IdFromRowCol(0,1)); this->m_spVer.CreateView(0,0,pContext->m_pNewViewClass,CSize(40,100),pContext); this->m_spHor.CreateView(0,0,pContext->m_pNewViewClass,CSize(60,80),pContext); this->m_spHor.CreateView(1,0,pContext->m_pNewViewClass,CSize(60,20),pContext); return TRUE; } 上面"Create"显示的program可以实现! 定义两个CSplitterWnd 变量(m_wndSplitter1,m_wndSplitter2),首先用m_wndSplitter1调用其CreateStatic方法,然后调用CreateView方法创建左边的视图,再用m_wndSplitter2调用其CreateStatic方法,用&m_wndSplitter1作其第一个参数,然后在调用CreateView方法创建右边两个视图。 TCP/ip网络编程方向问题? 如何屏蔽USB存储器 求 ATL开发指南第二版 电子版,谢谢, 不好意思啊~弱智问题! 问个很菜的问题,我想写个activex的控件,不知道能不能在里面使用directx啊? 高难度,先给100分,解决后再加分。 关于vc里面按钮上的文本的颜色问题 求助,应用程序对话框自动补全 子窗口位置调整的问题 用CRecordSet类写SQL Server7.0数据库得问题 无模式对话框绘图 *******怎样做一个开发环境????************
{
BOOL b_rtn = TRUE;
if(m_spliter.CreateStatic(this,1,2)) // 在M
{
b_rtn = m_spliter.CreateView(0,0,RUNTIME_CLASS(CViewLeft),CSize(250,100),pContext);
if(b_rtn)
{
b_rtn = m_spliter.CreateView(0,1,RUNTIME_CLASS(CViewRightUp),CSize(250,100),pContext);
b_rtn = m_spliter.CreateView(1,1,RUNTIME_CLASS(CViewRightDown),CSize(250,100),pContext);
}
}
else
{
m_spliter.DestroyWindow();
b_rtn = FALSE;
}
return b_rtn;
}
在主窗口类中声明两个CSplitterWnd的成员变量m_spHor和m_spVer;
然后,重载CMainFram的OnCreateClient函数:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
this->m_spVer.CreateStatic(this,1,2); this->m_spHor.CreateStatic(&m_spVer,2,1,WS_CHILD|WS_VISIBLE,m_spVer.IdFromRowCol(0,1)); this->m_spVer.CreateView(0,0,pContext->m_pNewViewClass,CSize(40,100),pContext); this->m_spHor.CreateView(0,0,pContext->m_pNewViewClass,CSize(60,80),pContext); this->m_spHor.CreateView(1,0,pContext->m_pNewViewClass,CSize(60,20),pContext); return TRUE;
}