利用ArcGIS进行二次开发时,IFeature类成员函数没有相关的函数,但是,IFeature类是IRow类的派生类,IRow类有成员函数get_Value()。
1)获得IField在IFields中的索引
IFieldsPtr ipFields;
IFieldPtr ipField;
long nFeaturesCount = -1;
long nFieldsIndex = -1;
ipFtCls->FeatureCount( NULL,&nFeaturesCount );
CString strField = m_fieldCheckSymbol.strBlockName; //检查的字段
//若存在则检查字段值是否符合要求
ipFtCls->get_Fields( &ipFields );
if( ipFields == NULL )
return FALSE;
//图层是否存在字段
ipFields->FindField( (CComBSTR)strField ,&nFieldsIndex );
2)获得要素的字段值
VARIANT vaFieldValue;
VariantInit( &vaFieldValue );
ipFt->get_Value( nFieldsIndex,&vaFieldValue );
申明:本文系原创,如果转载,请注明:转载自GIS足迹 www.gisfoot.com