我通过FINDWINDOW函数得到了一个指向CWnd的指针 我怎么样才能指向这个窗口的VIEW?因为我必须对VIEW发消息 。我直接用这个指针的POSTMESSAGE的话会把消息发到他的框架类

解决方案 »

  1.   

    CMainFrame * pMainFrm = (CMainFrame*)AfxGetMainWnd();
    CView * active = ((C***View *)pMainFrm->GetActiveView;
    active ->PostMessage(....)
      

  2.   

    感谢以上几位的回复 我没说清楚我的要求 呵呵  我自己也是在框架类把消息又转了一次给VIEW 我说的是能不能能直接发到VIEW 不用在框架类里面再发消息给VIEW
      

  3.   

    那要看看你的CWnd指针是在哪里获得的.
      

  4.   

    框架类会把消息首先转发给其视图类,这是MFC框架自身具有的,不需要你自己转发。
      

  5.   

    框架类会把消息首先转发给其视图类。如果没有转发的话,那就自己在框架类里处理一下,自己转发一下就行了。就象,iyranly 的代码那样。。
      

  6.   

    CWnd *p;
    =============
    CView *pView = ((CFrameWnd*)p)->GetActiveView();
    if(pView!=NULL)
    {
        pView->SendMessage(xx);
    }
      

  7.   

    结果:我还是只能在框架中发了一次给VIEW