用windows向导建立一个多文档程序,在框架的菜单栏新建一个菜单项,当单击该菜单项时,打开一个新视图(该视图对应一个单独的文档),当再次单击该菜单项时,会检测视图是否已经打开,如果已经打开则不进行任何操作,反之则打开视图,请问这个功能如何实现(需要是关于文档或视图或框架的一些操作,菜单变灰之类的就不必了)???

解决方案 »

  1.   


    BEGIN_MESSAGE_MAP(CXXXXXXXXXXXXView, CScrollView)
    // 标准打印命令
    ON_COMMAND(ID_FILE_PRINT, CScrollView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_DIRECT, CScrollView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, CScrollView::OnFilePrintPreview)
    ON_UPDATE_COMMAND_UI(ID_FILE_NEW, OnUpdateFileNew)
    END_MESSAGE_MAP()
    void CXXXXXXXXXXXXView::OnUpdateFileNew(CCmdUI *pCmdUI)
    {
    pCmdUI->Enable(FALSE);
    }
      

  2.   

    BEGIN_MESSAGE_MAP(CXXXXXXXXXXXXView, CScrollView)
        // 标准打印命令
        ON_COMMAND(ID_FILE_PRINT, CScrollView::OnFilePrint)
        ON_COMMAND(ID_FILE_PRINT_DIRECT, CScrollView::OnFilePrint)
        ON_COMMAND(ID_FILE_PRINT_PREVIEW, CScrollView::OnFilePrintPreview)
        ON_UPDATE_COMMAND_UI(ID_FILE_NEW, OnUpdateFileNew)
    END_MESSAGE_MAP()
    void CXXXXXXXXXXXXView::OnUpdateFileNew(CCmdUI *pCmdUI)
    {
        pCmdUI->Enable(FALSE);
    }