阅读:1239回复:0
vc中将mo的一个record存入数组,为什么取不出record的属性?
<P>CArray<CMoRecordset,CMoRecordset>m_Rec;
CMoPoint pt(m_map.ToMapPoint((float)x,(float)y)); CMoLayers layers(m_map.GetLayers()); double len; len = m_map.ToMapDistance(10); CMoRecordset recs; CMoFields Fields; VARIANT va; VariantInit(;va); va.vt = VT_I4; for(int i=0 ; i<layers.GetCount() ; i++) { va.intVal = i; CMoMapLayer counties(layers.Item(va1)); recs = counties.SearchByDistance(pt,len,""); if(recs.GetCount()>0) { recs.MoveFirst(); while (!recs.GetEof()) { CMoFields Fields( recs.GetFields()); CMoField FeutureField(Fields.Item(COleVariant(TEXT("FeatureId")))); CString str; str = FeutureField.GetValueAsString();//there is no problem,I can get theFeatureId m_Rec.Add(recs);//add the Recordset into CArray recs.MoveNext() } } } if(m_Rec.GetSize()>0) { recs = m_Rec.GetAt(0); CMoFields Fields1(recs.GetFields()); CMoField FeutureField(Fields1.Item(COleVariant(TEXT("FeatureId")))); CString str; str = FeutureField.GetValueAsString();//there is some mistake;I can not get the FeatureId }</P> <P>将查询得到的record存入动态数组,为什么再从数组中取出记录的时候无法得到record的属性呢?请高手指点</P> |
|