我想将程序界面分割成如下形式
—————————————
| | |
| | |
| 1 | 2 |
| | |
| | |
—————————————
| 3 |
| |
—————————————
onCreateClient()中的代码是这样
m_wndSplitterV.CreateStatic(this,2,1);
m_wndSplitterH.CreateStatic(&m_wndSplitterV,1,2,WS_CHILD | WS_VISIBLE,m_wndSplitterV.IdFromRowCol(0,0));
m_wndSplitterV.CreateView(1,0,RUNTIME_CLASS(CimageView),CSize(0,0),pContext);
m_wndSplitterH.CreateView(0,0,RUNTIME_CLASS(CimageView),CSize(200,0),pContext);
m_wndSplitterH.CreateView(0,1,RUNTIME_CLASS(CimageView),CSize(0,0),pContext);
但运行结果的布局是这样
—————————————
| 1 | 2 |
—————————————
| |
| |
| |
| |
| 3 |
| |
—————————————
结构虽然正确但1,2的位置几乎被3顶得看不见了 不论如何改CSize()的参数都如此,只能改变1,2的相对比列。
请问这是怎么回事,如何才能设置成理想的位置?
PS:分割条都是静态固定的 不能被鼠标拖动
—————————————
| | |
| | |
| 1 | 2 |
| | |
| | |
—————————————
| 3 |
| |
—————————————
onCreateClient()中的代码是这样
m_wndSplitterV.CreateStatic(this,2,1);
m_wndSplitterH.CreateStatic(&m_wndSplitterV,1,2,WS_CHILD | WS_VISIBLE,m_wndSplitterV.IdFromRowCol(0,0));
m_wndSplitterV.CreateView(1,0,RUNTIME_CLASS(CimageView),CSize(0,0),pContext);
m_wndSplitterH.CreateView(0,0,RUNTIME_CLASS(CimageView),CSize(200,0),pContext);
m_wndSplitterH.CreateView(0,1,RUNTIME_CLASS(CimageView),CSize(0,0),pContext);
但运行结果的布局是这样
—————————————
| 1 | 2 |
—————————————
| |
| |
| |
| |
| 3 |
| |
—————————————
结构虽然正确但1,2的位置几乎被3顶得看不见了 不论如何改CSize()的参数都如此,只能改变1,2的相对比列。
请问这是怎么回事,如何才能设置成理想的位置?
PS:分割条都是静态固定的 不能被鼠标拖动
解决方案 »
- 求助:VS2010下,strcpy函数的问题!
- 多线程win32API程序改错?
- win32多线程第十章一个问题,大神来指教下
- 我写了个ATL控件。可改变Text属性时发生DISP_E_MEMBERNOTFOUND警告,为啥?
- vs2005增加atl对话框的步骤?
- 我的ADO数据库应用程序有时正确执行,有时运行出错,不知道是不是连接没有正确打开和关闭
- 30分请问unresolved external symbol _WinMain@16是什么毛病
- 请问是否捕获别的应用程序调用 RegOpenKey??RegCreateKeyEx??能否实现?
- 郁闷事太多,散分
- 如何编写在ie上运行的软件?
- 如何获得WAV文件的倍速,然后对其进行修改,,
- 绝对路径和相对路径的问题
CSplitterWnd::SetColumnInfo
改变视图的长宽
在里面用SetRowInfo 改变大小