PersonalCorpus 版 (精华区)
发信人: hjt (浪子小猴◎中关村的民工◎忙活中), 信区: VisualC
标 题: 拆分窗口
发信站: 哈工大紫丁香 (2002年11月15日10:42:41 星期五), 站内信件
有一个例子,将程序窗口拆分成:
┌───┬─────┬────┐
│ │ │ │
│ │ │ │
│ │ │ │
├───┤ ├────┤
│ │ │ │
│ │ │ │
│ │ │ │
├───┤ ├────┤
│ │ │ │
│ │ │ │
│ │ │ │
└───┴─────┴────┘
看懂这个例子,那么再将窗口拆分成别的样子也就很easy了
CSplitterWnd m_SplitWnd1;
CSplitterWnd m_SplitWnd2;
CSplitterWnd m_SplitWnd3;
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
BOOL rtn;
CenterWindow();
CRect rect;
GetClientRect(&rect);
int width,high;
high=rect.Height()/3;
width=rect.Width()-high*2;
rtn = m_SplitWnd1.CreateStatic(this, 1, 3);
rtn|=m_SplitWnd2.CreateStatic(
&m_SplitWnd1,
3, 1,
WS_CHILD|WS_VISIBLE | WS_BORDER, //must be WS_CHILD
m_SplitWnd1.IdFromRowCol(0, 0)
);
rtn|=m_SplitWnd3.CreateStatic(
&m_SplitWnd1,
3, 1,
WS_CHILD|WS_VISIBLE | WS_BORDER, //must be WS_CHILD
m_SplitWnd1.IdFromRowCol(0, 2)
);
rtn|=m_SplitWnd2.CreateView(0, 0,
RUNTIME_CLASS(CLeftGloveView), CSize(50,50), pContext);
rtn|=m_SplitWnd2.CreateView(1, 0,
RUNTIME_CLASS(CLeftTrackView), CSize(50,50), pContext);
rtn|=m_SplitWnd2.CreateView(2, 0,
RUNTIME_CLASS(CLeftStationView), CSize(50, 50), pContext);
rtn|=m_SplitWnd1.CreateView(0, 1,
RUNTIME_CLASS(CGestureRecView), CSize(100, 100), pContext);
rtn|=m_SplitWnd3.CreateView(0, 0,
RUNTIME_CLASS(CRightGloveView), CSize(50,50), pContext);
rtn|=m_SplitWnd3.CreateView(1, 0,
RUNTIME_CLASS(CRightTrackView), CSize(50, 50), pContext);
rtn|=m_SplitWnd3.CreateView(2, 0,
RUNTIME_CLASS(CRightStationView), CSize(50, 50), pContext);
m_SplitWnd1.SetColumnInfo(0,high,10);
m_SplitWnd1.SetColumnInfo(1,width,50);
m_SplitWnd2.SetRowInfo(0,high,10);
m_SplitWnd2.SetRowInfo(1,high,10);
m_SplitWnd3.SetRowInfo(0,high,10);
m_SplitWnd3.SetRowInfo(1,high,10);
return rtn;
}
--
←───────────────────────┼┼
│ █ █ ███ ███ 人生漫漫苦短 ││
│ ███ █ █ 一人独行便长 ↓│
┼┼ █ █ ██ █ ↓
┼┼─────────────────────────────────→
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 159.226.42.8]
※ 修改:·hjt 於 11月15日10:43:42 修改本文·[FROM: 159.226.42.8]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.574毫秒