您的位置:首页 > 其它

Vs2010使用SplitterWnd时,拖动窗口导致View间歇性消失

2013-05-28 15:05 281 查看
创建静态拆分窗口的方法:

1. 在父框架中嵌入一个CSplitterWnd成员变量。

2. 重载父框架的CFrameWnd::OnCreateClient成员函数。

3. 从重载的OnCreateClient函数中调用类CSplitterWnd的Create或CreateStatic成员函数,并调用CreateView来创建视图。

 

其中重载CFrameWnd::OnCreateClient的代码如下:

 

BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)

{

 // TODO: 在此添加专用代码和/或调用基类

 if(m_wndSplitter1.CreateStatic(this, 1, 2, (WS_CHILD | WS_VISIBLE | WS_BORDER)) == NULL)

 {

  return FALSE;

 }

 m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CerewrView),CSize(200,100), pContext);

 m_wndSplitter1.CreateView(0,1,RUNTIME_CLASS(CMainView),CSize(100,100), pContext);

 return CFrameWndEx::OnCreateClient(lpcs, pContext);

}

 

创建的分隔窗口就会间歇性消失,解决方法就是,注释掉return CFrameWndEx::OnCreateClient(lpcs, pContext);,直接返回TRUE。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐