RT
窗口被分割成了三部分,左边为LView,右上为MainView,右下为RView,我知道用Doc的UpdateAllView来通知视图更新,但我不是全部都更新,比如在MainView里作了操作,只通知RView进行更新,该怎么实现呢? 谢谢

解决方案 »

  1.   

    通过框架类可以得到文档类,遍历文档类的视图列表,判断视图类的类型,只对类型为RView的发送更新通知就可以了。
      

  2.   

    在调用 UpdateAllViews 时,把你要更新的视图指针作为参数传递。
      

  3.   

    GetDocument( )->UpdateAllViews(pRView);
      

  4.   

    尝试了一下楼上的方法,没有成功,UpdateAllView(CView * pSender,.....),MSDN上说pSender 是修改文档的视图指针,不是需要通知更新的视图指针~`
    另,通过框架内得到文档类,在遍历文档类的所有视图可以得到pRView,但用什么方法通知RView进行更新呢~?还是UpdateAllView?
    //===========
    MainView::Operation()
    {.....
        GetDocument( )->UpdateAllViews(...); // 这儿该怎么写?
    }RView::OnUpdate(CView* /*pSender*/, LPARAM /*lHint*/, CObject* /*pHint*/)
    {
       // 这里怎么判断是通知RView的??
    }