首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

隐藏静态拆分窗口,该怎么解决

2012-01-19 
隐藏静态拆分窗口想隐藏静态拆分窗口,把左边那列隐藏.Build成功后运行,窗口没有反应,不知道是怎么回事?在M

隐藏静态拆分窗口
想隐藏静态拆分窗口,把左边那列隐藏.Build成功后运行,窗口没有反应,不知道是怎么回事?

在MainFrm.cpp中加入:
BOOL   CMainFrame::OnCreateClient(LPCREATESTRUCT   lpcs,   CCreateContext*   pContext)  
{
if   (!m_wndSplitter.CreateStatic(this,   1,   2))
return   FALSE;

m_wndSplitter.CreateView(0,   0,   RUNTIME_CLASS(CLeftView),   CSize(100,   100),   pContext);
m_wndSplitter.CreateView(0,   1,   RUNTIME_CLASS(CRightView),   CSize(100,   100),   pContext);

return   TRUE;
}

void   CMainFrame::OnHideWin()  
{

m_wndSplitter.SetActivePane(0,1);

CWnd*   pPaneHide=m_wndSplitter.GetPane(0,0);
ASSERT(pPaneHide!=NULL);
pPaneHide-> ShowWindow(SW_HIDE);
pPaneHide-> SetDlgCtrlID(ID_HIDE_COLUMN);


CWnd*   pPane=m_wndSplitter.GetPane(0,1);
pPane-> SetDlgCtrlID(m_wndSplitter.IdFromRowCol(0,0));

m_pColInfo[1].nCurSize=m_pColInfo[0].nCurSize;

CSplitterWnd::RecalcLayout;
}
并在MainFrm.h中加入:
public:
CSplitterWnd   m_wndSplitter;
CSplitterWnd::CRowColInfo   m_pColInfo[5];
int   ID_HIDE_COLUMN;
在CLeftView和CRightView都是CView的派生类.
请高手指点下...

[解决办法]
去codeproject上去看下,有一个隐藏切分窗口的例子.
[解决办法]
SetRowInfo()设置大小
[解决办法]
我做的隐藏是直接继承CSPLITTERWND,通过修改成员变量来实现的.呵.

热点排行