添加鼠标移动事件,编译时出错:
代码如下:ON_EVENT(CHelloView, IDC_MAP, DISPID_MOUSEMOVE,OnMouseMoveInMap,TS_I2   VTS_I2   VTS_XPOS_PIXELS   VTS_YPOS_PIXELS)//鼠标移动消息错误: error C2440: 'initializing' : cannot convert from 'char [1]' to 'unsigned int'这是怎么回事?我看书上的例子

解决方案 »

  1.   

    错误: error C2440: 'initializing' : cannot convert from 'char [1]' to 'unsigned int'
    -------------------------------------------------
    你这个错误指向的是你贴的那个事件映射的代码 ???
      

  2.   

    就是指我贴的代码:后面还有错误,如下:
    error C2440: 'initializing' : cannot convert from 'char [5]' to 'unsigned int'
    error C2440: 'initializing' : cannot convert from 'void (__thiscall CCmdTarget::*)(void)' to 'unsigned int'
    error C2440: 'initializing' : cannot convert from 'void (__thiscall CCmdTarget::*)(void)' to 'unsigned int'
    error C2440: 'initializing' : cannot convert from 'unsigned int' to 'void (__thiscall CCmdTarget::*)(void)'
      

  3.   

    错误: error C2440: 'initializing' : cannot convert from 'char [1]' to 'unsigned int'
    ============
    你这个错误和你上面贴的代码好像没有关系啊
      

  4.   

    ,TS_I2 ?/??
    ==> VTS_I2 right?
      

  5.   

     在视图类的声明文件.h中加入 EVENTSINK声明 
    //}}AFX_MSG    DECLARE_MESSAGE_MAP()    DECLARE_EVENTSINK_MAP() //here    2 在视图类的实现文件.cpp 中加入具体的EVENTSINK
    BEGIN_EVENTSINK_MAP(CGisCEView,   CView)           ON_EVENT(CMapDispView,   IDC_MAP,   DISPID_MOUSEMOVE,           OnMouseMove,   VTS_I2   VTS_I2   VTS_XPOS_PIXELS   VTS_YPOS_PIXELS)       END_EVENTSINK_MAP()    3 然后是实现OnMouseMove 函数的定义 
    //i MapDispView.h 文件中添加 
    afx_msg void OnMouseMove(short Button, short Shift, OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y); 
    //ii MapDispView.cpp 文件中添加     void CMapDispView::OnMouseMove(short Button, short Shift, OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)     {      
        }
    我就按他说的这样做的,就出现我那样的错误
      

  6.   

    BEGIN_EVENTSINK_MAP(CGisCEView, CView)ON_EVENT(CMapDispView, IDC_MAP, DISPID_MOUSEMOVE, 这里面写的类怎么不同啊?你检查下看看。