在视图类中声明一个CMoPoint变量,在鼠标单击地图控件事件中赋值。如下:
m_moPoint=m_Map.ToMapPoint((float)X,(float)Y);
COleVariant variant;
variant.vt=VT_NULL;
CMoTrackingLayer tLayer;
tLayer.CreateDispatch("MapObjects2.TrackingLayer");
tLayer=m_Map.GetTrackingLayer();
tLayer.**(TRUE,variant);
最后在跟踪图层事件(AfterTrackingLayerDraw)或地图自画事件(AfterLayerDraw)中画点即可,如下:
CMoSymbol symbol;
symbol.CreateDispatch("MapObjects2.Symbol");
symbol.SetColor(RGB(0,255,0));
symbol.SetSymbolType(2);
symbol.SetSize(5);
m_Map.DrawShape(m_moPoint,symbol);
m_moPoint=m_Map.ToMapPoint((float)X,(float)Y);
COleVariant variant;
variant.vt=VT_NULL;
CMoTrackingLayer tLayer;
tLayer.CreateDispatch("MapObjects2.TrackingLayer");
tLayer=m_Map.GetTrackingLayer();
tLayer.**(TRUE,variant);
最后在跟踪图层事件(AfterTrackingLayerDraw)或地图自画事件(AfterLayerDraw)中画点即可,如下:
CMoSymbol symbol;
symbol.CreateDispatch("MapObjects2.Symbol");
symbol.SetColor(RGB(0,255,0));
symbol.SetSymbolType(2);
symbol.SetSize(5);
m_Map.DrawShape(m_moPoint,symbol);