Use this subroutine to draw a Point feature on the screen. With this example the point will not persist on the screen; it will disappear when the screen next refreshes. See How to draw polygon buffers for an example showing how drawings can be persisted on the display.
How to use
- Add a new UITool control onto any toolbar.
- Paste the code below into its OnMouseDown event.
- Mind the name of the control, the sample assumes it is called UIToolControl1.
- Completely close down VBA so mouse events will fire.
- Select this tool and click somewhere on the focus map.
Private Sub UIToolControl1_MouseDown(ByVal button As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long)
Dim pMxDoc As IMxDocument
Dim pActiveView As IActiveView
Dim pScreenDisplay As IScreenDisplay
Set pMxDoc = Application.Document
Set pActiveView = pMxDoc.FocusMap
Set pScreenDisplay = pActiveView.ScreenDisplay
With pScreenDisplay
.StartDrawing pScreenDisplay.hdc, esriNoScreenCache
.SetSymbol New SimpleMarkerSymbol
.DrawPoint pMxDoc.CurrentLocation
.FinishDrawing
End With
End Sub