单文档程序,在窗口分割前,我在view类中添加了新的菜单响应函数,后来把窗口切割成了左右两个窗口,右边对应原来的view,左边窗口对应一个新视图,当鼠标点击右边的窗口时,之前添加的菜单是可用的,可是当鼠标点击左边的窗口时,之前添加的菜单就变灰了,请问这个问题怎么解决?

解决方案 »

  1.   

    这种现象是正常的呀。
    谁ON_COMMAND谁就有权处理啊每个View中都OnCommand绑定该功能
      

  2.   

    你的意思是每个view里面都要把菜单的功能实现一遍吗?
      

  3.   

    我试着在左边窗口对应的视图中也添加ON_COMMAND响应,然后鼠标点到左边窗口的时候那两个菜单项就不变灰了,不过我在想,如果我再多几个视图,岂不是每个视图都要添加菜单响应?有没有更方便的方法啊?
      

  4.   


    本来就是这个样子啊。至少OnCommmand要写的
    看看这个例子BEGIN_MESSAGE_MAP(CMuiltVSView, CView)
    ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, &XXXView::OnFilePrintPreview)