MAPX中的OnDrawUserLayer怎样被触发?(及其诡异的问题)
1、定义工具(MYTOOL1)
2、创建该工具m_ctrMapX.CreateCustomTool(MYTOOL_TRACE,miToolTypePoint,miCrossCursor);//轨迹
3、设计响应函数
a.在视或文档的头文件中添加DECLARE_EVENTSINK_MAP()
b.在相应的cpp文件中添加:
BEGIN_EVENTSINK_MAP(CGpsMapView, CView)
ON_EVENT(CGpsMapView, IDC_MAP, MAPX_DISPID_DRAWUSERLAYER, OnDrawUserLayer, VTS_DISPATCH VTS_I4 VTS_I4 VTS_DISPATCH VTS_DISPATCH)
END_EVENTSINK_MAP()
c、编写OnDrawUserLayer()响应函数
4、在调用该工具的地方m_ctrMapX.SetCurrentTool(MYTOOL1)
但是我反复测试过了,OnDrawUserLayer函数不会被触发!
是不是消息还没有被绑定好呢?问题出在哪里呢?请高人回答!