我建立了一个单文档窗口。
先把整个窗口分为左右栏。
然后把右栏分为上下栏。
最终我把右下栏放了一个CEditView,初始情况如下
wnd_Right.CreateView(1, 0,
RUNTIME_CLASS(CMyEditView), CSize( 800 , 200 ), pContext)CMyEditView我是继承的CEditView。
CSplitterWnd wnd_Right;现在问题是,我改变CMyEditView栏大小时,可写字的区域仍然是上面设定的800*200大小。
我把这一栏拖得很大小,仍然是显示这么大小。拖得很小时滚动条也不随着产生……。怎么搞让可写的区域随栏的大小动态改变?我试过了MoveWindow()试过多次,没有成功。请各位指点。

解决方案 »

  1.   

    wnd_Right.CreateView(1,   0, 
    RUNTIME_CLASS(CMyEditView),   CSize( 0, 0),   pContext) //将这个CSize设为0;//在这里设置视图的属性
    wnd_Right.SetColumnInfo(0,65,0);     //这个值你参照msdn随便写
    wnd_Right.RecalcLayout();
      

  2.   

    应该就是参数CSize的大小设计有问题
      

  3.   

    按楼上两位做法搞不定啊。我的CEditView控件CEdit仍然只有CSize(   800   ,   200   )的大小。无论你怎么改变分栏窗口的大小,CEdit怎么都不变。
      

  4.   

    GetEditCtrl 
    CEdit::SetRect