Zoom to selected features using ArcObjects
Summary
In ArcMap you can zoom to the selected features for a layer by right-clicking the layer and selecting Selection > Zoom to Selected Features. This article shows how to do this task using VBA and ArcObjects.
Procedure
- Start ArcMap.
- Create a new UIButtonControl.
- Right-click the UIButtonControl and select View Source.
- Copy this code into the
's click event.
Private Sub UIButtonControl1_Click()
Dim pDoc As IMxDocument
Set pDoc = ThisDocument
Dim pMap As IMap
Set pMap = pDoc.FocusMap
![]()
Dim pLayer As IFeatureLayer
Dim pFSel As IFeatureSelection
Set pLayer = pMap.Layer(0)
Set pFSel = pLayer
![]()
'Get the selected features
Dim pSelSet As ISelectionSet
Set pSelSet = pFSel.SelectionSet
![]()
Dim pEnumGeom As IEnumGeometry
Dim pEnumGeomBind As IEnumGeometryBind
![]()
Set pEnumGeom = New EnumFeatureGeometry
Set pEnumGeomBind = pEnumGeom
pEnumGeomBind.BindGeometrySource Nothing, pSelSet
![]()
Dim pGeomFactory As IGeometryFactory
Set pGeomFactory = New GeometryEnvironment
![]()
Dim pGeom As IGeometry
Set pGeom = pGeomFactory.CreateGeometryFromEnumerator(pEnumGeom)
![]()
pDoc.ActiveView.Extent = pGeom.Envelope
pDoc.ActiveView.Refresh
![]()
End Sub
-----------------------------------------------------------
佛对我说:你心里有尘。我用力的拭擦。



浙公网安备 33010602011771号