void CMouseView::OnMouseMove(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default
static char output[20];
   CMainFrame *pFrame=(CMainFrame*)(AfxGetApp->m_pMainWnd);
CStatusBar *pStatus=&pFrame->m_wndStatusBar;
if(pStatus)
{
sprintf(output,"(%d,%d)",point.x,point.y);
pStatus->SetPaneText(2,output);
}
CView::OnMouseMove(nFlags, point);
}
哪里出问题了,编译不能通过?

解决方案 »

  1.   

    CStatusBar *pStatus=&pFrame->m_wndStatusBar;//pFrame本来就是指针,不用&运算符.注意在view中include CMainFrame的头文件
      

  2.   

    同意kingcom_xu(刀是用来杀人的!) 怎么可以对一个指针进行&操作呢
      

  3.   

    bear_c() 说的是对的现在可以运行了
      

  4.   

    CStatusBar *pStatus=&(pFrame->m_wndStatusBar);
      

  5.   

    static char output[20];
       CMainFrame *pFrame=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
    CStatusBar *pStatus = &(pFrame->m_wndStatusBar);
    if(pStatus)
    {
    sprintf(output,"(%d,%d)",point.x,point.y);
    pStatus->SetPaneText(2,output);
    }1)AfxGetApp 后面忘记加()
    2)把m_wndStatusBar这个变量,在CMAINFRAME里面改成PUBLIC
      

  6.   

    可以用AfxGetMainWnd取主框架对象
      

  7.   

    AfxGetApp()是一个全局函数,取得全局对象theApp