我现在有个需求,要在新建视图时检查当前视图数量,如果有一个视图,则设置MAINFRAME的大小和位置,并且最大化CHILDFRAME,如果有两个视图,则最大化MAINFRAME,并且让每个视图都回到NORMAL状态,而且平铺显示
现在有一个视图的情况我已经做好了,在视图OnInitialUpdate()中实现,代码:  if(m_iTotalView == 1)
  {
    AfxGetApp()->GetMainWnd()->MoveWindow(0,256,1280,512,TRUE);
    GetParentFrame()->ShowWindow( SW_SHOWMAXIMIZED );
  }
但是有两个视图的情况现在不起效果,代码:  else if(m_iTotalView == 2)
  {
    AfxGetApp()->GetMainWnd()->ShowWindow(SW_SHOWMAXIMIZED);
    POSITION pos = m_pDoc->GetFirstViewPosition();
    CView *pView = NULL;
    while((pView = m_pDoc->GetNextView(pos)) != NULL)
    {
      pView->GetParentFrame()->ShowWindow(SW_SHOWNORMAL);
    }
    AfxGetApp()->GetMainWnd()->PostMessage(WM_MDITILE, MDITILE_HORIZONTAL);
  }
这里有两个问题
1、用GetNextView遍历View的时候只能找到当前View,为什么?如何才能找到所有的View?
2、MAINFRAME是最大化了,但是视图没有变成NORMAL状态,也没有被平铺,请问如何才能实现这一点?