求一个MFC关于CSplitterWnd的程序实例
各位好!求一个MFC的实例,功能很简单,只要实现能开一个窗口,把窗口分成左右两部分,然后在每一部分里画个圈就行了,不需要文档支持。不需要全套工程,请把工程中的CMainF...
各位好!求一个MFC的实例,功能很简单,只要实现能开一个窗口,把窗口分成左右两部分,然后在每一部分里画个圈就行了,不需要文档支持。
不需要全套工程,请把工程中的CMainFrame和所有View的.h和.cpp文件放到759665394@qq.com,请注明自己的百度ID。
请不要回答诸如核心代码之类的东西,因为我弄不清自己的程序的问题,所以求个实例来对照,请各位大神帮忙! 展开
不需要全套工程,请把工程中的CMainFrame和所有View的.h和.cpp文件放到759665394@qq.com,请注明自己的百度ID。
请不要回答诸如核心代码之类的东西,因为我弄不清自己的程序的问题,所以求个实例来对照,请各位大神帮忙! 展开
展开全部
这是VC的例子VIEWEX代码完全按照您的要求。
BOOL C3WaySplitterFrame ::的OnCreateClient(LPCREATESTRUCT LPCS,
CCreateContext * pContext)
{
/ /创建一个分离器,有1行2列
(m_wndSplitter。 CreateStatic(这一点,1,2)){
TRACE0(“到CreateStaticSplitter \ n”);
返回FALSE;
}
/ /添加第一个分离器窗格 - 列的默认视图0
(m_wndSplitter.CreateView(0,0,
pContext-> m_pNewViewClass,CSIZE(200,50),pContext)) {
TRACE0(“未能创建第一个窗格\ n”);
返回FALSE;
}
/ /添加第二个分离器窗格 - 这是一个嵌套分离器(m_wndSplitter2.CreateStatic(
m_wndSplitter,/ /?我们的父窗口的第一分2行
2,1,/ /?新的分离器2行,1列
WS_CHILD | WS_VISIBLE | WS_BORDER,/ /?的风格,WS_BORDER需要
m_wndSplitter.IdFromRowCol(0,1)
/ /新的分离器是在第一行中,第2列的第一分
))
{
TRACE0(“无法创建嵌套的分离器\ n”);
返回FALSE;
}
BR /> / /现在创建两个视图里面的嵌套分离器
诠释cyText = MAX(LPCS - > CY - 70,20); / /文本窗格的高度
如果(! m_wndSplitter2。CreateView的(0,0,
RUNTIME_CLASS(CTextView)的,CSIZE(0,cyText),pContext)){
TRACE0(“未能创建了第二个窗格\ n”); BR />返回FALSE;}
(m_wndSplitter2.CreateView(1,0,
RUNTIME_CLASS(CColorView)的,CSIZE(0,0),pContext))
{
TRACE0(“无法创建第三个窗格\ n”);
返回FALSE;
}
/ /它的所有工作,我们现在有两个分割窗口包含
/ /三种不同的看法
返回TRUE;
}
******************** **********************************
VS两侧的面板资源的属性面板DockPane,不与分配器。如果您使用的是VS2008 SP1加或VS2010,它可以直接生成的VS的框架。
BOOL C3WaySplitterFrame ::的OnCreateClient(LPCREATESTRUCT LPCS,
CCreateContext * pContext)
{
/ /创建一个分离器,有1行2列
(m_wndSplitter。 CreateStatic(这一点,1,2)){
TRACE0(“到CreateStaticSplitter \ n”);
返回FALSE;
}
/ /添加第一个分离器窗格 - 列的默认视图0
(m_wndSplitter.CreateView(0,0,
pContext-> m_pNewViewClass,CSIZE(200,50),pContext)) {
TRACE0(“未能创建第一个窗格\ n”);
返回FALSE;
}
/ /添加第二个分离器窗格 - 这是一个嵌套分离器(m_wndSplitter2.CreateStatic(
m_wndSplitter,/ /?我们的父窗口的第一分2行
2,1,/ /?新的分离器2行,1列
WS_CHILD | WS_VISIBLE | WS_BORDER,/ /?的风格,WS_BORDER需要
m_wndSplitter.IdFromRowCol(0,1)
/ /新的分离器是在第一行中,第2列的第一分
))
{
TRACE0(“无法创建嵌套的分离器\ n”);
返回FALSE;
}
BR /> / /现在创建两个视图里面的嵌套分离器
诠释cyText = MAX(LPCS - > CY - 70,20); / /文本窗格的高度
如果(! m_wndSplitter2。CreateView的(0,0,
RUNTIME_CLASS(CTextView)的,CSIZE(0,cyText),pContext)){
TRACE0(“未能创建了第二个窗格\ n”); BR />返回FALSE;}
(m_wndSplitter2.CreateView(1,0,
RUNTIME_CLASS(CColorView)的,CSIZE(0,0),pContext))
{
TRACE0(“无法创建第三个窗格\ n”);
返回FALSE;
}
/ /它的所有工作,我们现在有两个分割窗口包含
/ /三种不同的看法
返回TRUE;
}
******************** **********************************
VS两侧的面板资源的属性面板DockPane,不与分配器。如果您使用的是VS2008 SP1加或VS2010,它可以直接生成的VS的框架。
追问
好吧,我表示我要OnCreateClient没有用。。。我不知道要怎么写对应的view类才能实现这个效果,单纯重载OnCreateClient的话,完全没有效果,所以求view的实例
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询