Private Sub UIButtonControl3_Click()
Dim pMxApp As IMxApplication
Set pMxApp = Application
Dim pMxDoc As IMxDocument
Set pMxDoc = Application.Document
Dim pLayer As ILayer
Set pLayer = pMxDoc.SelectedLayer
Dim pRGBColorA As IRgbColor
Set pRGBColorA = New RgbColor
pRGBColorA.Red = 255
Dim pFLayer As IFeatureLayer
Set pFLayer = pLayer
Dim pQFilter As IQueryFilter
Set pQFilter = New QueryFilter
pQFilter.WhereClause = "LEIXING = '水田'"
'我的条件,可以根据自己需要定义
Dim pFeatSelection As IFeatureSelection
Set pFeatSelection = pLayer
pFeatSelection.SelectFeatures pQFilter, esriSelectionResultNew, False
pFeatSelection.SelectionChanged
Set pFeatSelection.SelectionColor = pRGBColorA
'在这里可以利用pFeatSelection.SelectionSymbol来设置样式
pMxDoc.ActiveView.Refresh
End Sub
Dim pMxApp As IMxApplication
Set pMxApp = Application
Dim pMxDoc As IMxDocument
Set pMxDoc = Application.Document
Dim pLayer As ILayer
Set pLayer = pMxDoc.SelectedLayer
Dim pRGBColorA As IRgbColor
Set pRGBColorA = New RgbColor
pRGBColorA.Red = 255
Dim pFLayer As IFeatureLayer
Set pFLayer = pLayer
Dim pQFilter As IQueryFilter
Set pQFilter = New QueryFilter
pQFilter.WhereClause = "LEIXING = '水田'"
'我的条件,可以根据自己需要定义
Dim pFeatSelection As IFeatureSelection
Set pFeatSelection = pLayer
pFeatSelection.SelectFeatures pQFilter, esriSelectionResultNew, False
pFeatSelection.SelectionChanged
Set pFeatSelection.SelectionColor = pRGBColorA
'在这里可以利用pFeatSelection.SelectionSymbol来设置样式
pMxDoc.ActiveView.Refresh
End Sub
本文介绍了一个使用VBA在ArcGIS中通过点击事件选择特定类型的地图要素(如水田)并设置其显示颜色的过程。通过定义查询过滤器实现了精确选择,并展示了如何更改所选要素的颜色。
7590

被折叠的 条评论
为什么被折叠?



