MFC程序,由多个View, 其中有个初始化的代码,需要所有的view都被实例化以后才能执行,请问这个代码应该加在那个类的那个事件中?谢谢了

解决方案 »

  1.   

    View只是用来显示数据的,用户可以选择采用哪种方式看数据。数据的初始化最好在Document中。
      

  2.   

    在最后一个view的OnInitialUpdate代码中,并在修改Document数据后用CDocument::UpdateAllViews 广播
      

  3.   

    每个View的OnInitialUpdate用消息通知 FrameWnd ,FrameWnd做View的标志记录或计数,完成后初始化。
      

  4.   

    在OnInitialUpdate()函数中,在窗体创建以前的函数
      

  5.   

    View是同一类吗?创建有固定的数据吗?有固定的初始化顺序吗?
    是同一类,那就用静态变量作计数,OnInitialUpdate
    非同类,有固定顺序也好办,最后一个;
    非同类,没有固定顺序,如3楼,当然可以用其它办法,不过大同小异。
      

  6.   

    多个VIEW在程序运行时就全部显示实例化吗?还是在某些条件下才对其实例化,比如用户触发什么事件.
    否则的话,在MAINFRAME中肯定有做实例化的代码,在此后做你需要的初始化就可以了. 
      

  7.   

    不清楚你的View是怎么弄的,和框架文档有没有关联?
    一般是你的View初始化完成以后通知你的主框架窗口,主框架中判断是否所有的View都初始化了
      

  8.   

    这个问题还是得靠自己的经验和需求而定吧,假如MFC程序从创建并实例化到最后窗口显示的流程你清晰了,我想你才能较好地处理这个问题,别人只是按照他们的经验去为你铺设,但不见得比你自己理解后去设计来得合适对口。