我有三个表A,B,C
要把一个视图切分为上下两部分
上面的视图显示表A不变
通过菜单的控制来切换下面的视图分别显示表B和C请问具体的思路该怎么做?

解决方案 »

  1.   

    显示B表的时候,将C表隐藏,显示C表时候,将B表隐藏。
      

  2.   

    你可以参考以下代码
    enum eView { STRING = 1, HEX = 2 };
    void SwitchToView(eView nView);
    void CMainFrame::SwitchToView(eView nView)
    {
        CView* pOldActiveView = GetActiveView();
        CView* pNewActiveView = (CView*) GetDlgItem(nView);
        if (pNewActiveView == NULL) {
            switch (nView) {
            case STRING:
                pNewActiveView = (CView*) new CStringView;
                break;
            case HEX:
                pNewActiveView = (CView*) new CHexView;
                break;
            }
            CCreateContext context;
            context.m_pCurrentDoc = pOldActiveView->GetDocument();
            pNewActiveView->Create(NULL, NULL, WS_BORDER,
                CFrameWnd::rectDefault, this, nView, &context);
            pNewActiveView->OnInitialUpdate();
        }
        SetActiveView(pNewActiveView);
        pNewActiveView->ShowWindow(SW_SHOW);
        pOldActiveView->ShowWindow(SW_HIDE);
        pOldActiveView->SetDlgCtrlID(
            pOldActiveView->GetRuntimeClass() == 
            RUNTIME_CLASS(CStringView) ? STRING : HEX);
        pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
        RecalcLayout();
    }----------------------
                May you succeed!
                       ------------------------