rt

解决方案 »

  1.   

    AfxGetMainWnd()然后强制类型转换就可以了。
    还有一种就是发消息
    SendMessage::
      

  2.   

    ((CMainFrame*)AfxGetMainWnd())->Main中的函数();但得保证这个调用的函数是public里的
      

  3.   

    GetParentFrame()->SendMessage(***);
      

  4.   

    将菜单消息映射到view就可以了。
      

  5.   

    GetParentFrame()->SendMessage(ID_START);
    为何没起作用啊?
      

  6.   

    guanjinke(纶巾客):
    我想在View的WM_CREATIVE中执行MainFrame中的菜单命令,所以不能影射到view阿
      

  7.   

    //View的OnCreate代码,我就是想让程序运行后自己点一下菜单而已
    int CMySnapView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
    {
    if (CView::OnCreate(lpCreateStruct) == -1)
    return -1;
    TRACE("%d\n",GetParentFrame());
    GetParentFrame()->SendMessage(ID_START_1);

             return 0;
    }
    //可就是没有自己点,还是需要我来点:(
      

  8.   

    如果你想执行对应菜单条的click事件的那个函数的代码,那么你可以得到MainFrame的指针然后直接调用就可以了。当然那个函数是public的,参数自己设定。获取指针的方法参考
    zhucde(【風間苍月】)(MS_MVP)的回帖。
      

  9.   

    消息处理函数时VC自己建立的,protected属性,我好改成public吗?
    protected:
    //{{AFX_MSG(CMainFrame)
    afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
    afx_msg void OnStart();