如何浏览纪录(属性查询)
本例实现的是如何按照给定的查询要求,找出满足要求的记录。
l 要点
创建IQueryFilter接口对象,设置IQueryFilter.WhereClause属性为属性查询条件,使用IFeatureClass.Search方法进行查询,返回ICursor接口对象
主要用到了IFeatureClass接口、IFeature接口、IFeatureCursor接口和IQueryFilter接口。
l 程序说明
函数SelectFeatures在当前激活的Map的第一个图层中查出"FID < 2"的所有记录。
l 代码
|
Private Sub SelectFeatures() Dim pMxDocument As IMxDocument Dim pMap As IMap Dim pFeatureLayer As IFeatureLayer Dim pFeatureClass As IFeatureClass Dim pFeature As IFeature Dim pFeatureCursor As IFeatureCursor Dim pQueryFilter As IqueryFilter On Error GoTo ErrorHandler: Set pMxDocument = ThisDocument Set pMap = pMxDocument.FocusMap If (pMap.LayerCount = 0) Then MsgBox ("缺少数据") Exit Sub End If Set pFeatureLayer = pMap.Layer(0) Set pFeatureClass = pFeatureLayer.FeatureClass Set pQueryFilter = New QueryFilter pQueryFilter.WhereClause = "FID < 2" Set pFeatureCursor = pFeatureClass.Search(pQueryFilter, False) Set pFeature = pFeatureCursor.NextFeature Do While Not pFeature Is Nothing 'More Operations Set pFeature = pFeatureCursor.NextFeature Loop Exit Sub ErrorHandler: MsgBox Err.Description End Sub Private Sub UIButtonControl1_Click() On Error GoTo ErrorHandler: SelectFeatures Exit Sub ErrorHandler: MsgBox Err.Description End Sub |
浙公网安备 33010602011771号