这两个函数都试过了 光标就是不改变!!! 郁闷死啦
    SetClassLong(m_hWnd,GCL_HICON,(LONG)LoadIcon(AfxGetInstanceHandle(),IDI_ERROR));
    SetCursor(::LoadCursor(AfxGetInstanceHandle(),IDC_CROSS));      我想要动态改变光标
   谁知道为什么无效?谁有其他方法?

解决方案 »

  1.   

    你代码是写在哪里的?
    在OnSetCursor里写这些代码试试
      

  2.   

    除了楼上所说还有 你为什么SetCursor(::LoadCursor(AfxGetInstanceHandle(),IDC_CROSS)); 使用全局函数,而不是使用特定类的方法>LoadCursor(IDC_CROSS),你可以再调用的地方这样写啊SetCursor(AfxGetApp()->LoadCursor(IDC_CROSS));
      

  3.   

      是对话框为主窗口的MFC exe 程序
          OnSetCursor
         OnInitDialog()
         OnCreate(LPCREATESTRUCT lpCreateStruct)
     把代码 写在这些函数里面都试过了  都无效
      

  4.   

    处理WM_SETCURSOR消息,在函数中SetCursor(),最后返回TRUE即可;
    BOOL CXXXDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) 
    {
    // TODO: Add your message handler code here and/or call default
    SetCursor(::LoadCursor(NULL,IDC_CROSS)); return TRUE; //return CDialog::OnSetCursor(pWnd, nHitTest, message);
    }
      

  5.   

       我返回的是 
      return CDialog::OnSetCursor(pWnd, nHitTest, message);
     
    太大意了~!   刚才我去查书了
      书上也说 要返回TRUE, 以通知Windows光标已被设置。