|
阅读:1296回复:0
MapObject:获取到记录(CMoRecordset)后,如何得到各个字段。
<P>当我获取到记录(CMoRecordset)和字段集(CMoFields)后:</P>
<P>CMoLayers layers(m_Map1.GetLayers()); <BR> CMoMapLayer layer(layers.Item(COleVariant((short)0)));<BR> CMoRecordset morecord(layer.GetRecords());</P> <P>CMoFields mofields = morecord.GetFields();</P> <P>到这步后如何得到具体的字段名?</P> <P>CMoField idfield = fields.Item(COleVariant(TEXT("ID")));</P> <P>程序运行到上面语句处没有找到名称为ID的字段: idfield 的IUnknown值有误:__vfptr CXX0030: Error: expression cannot be evaluated。</P> <P>不知道记录到底包括那几个字段,每个字段的名称是什么?应该如何获取字段名称?</P> <P>我试图用下面的方式获取(但不知道方法对不对):</P> <P>CMoTableDesc tabldes = morecord.GetTableDesc();<BR>for(int j=0; j<tabldes.GetFieldCount(); j++)<BR>{ <BR> CString fieldname = tabldes.GetFieldName(j); </P> <P> AfxMessageBox(fieldname); </P> <P> }</P> <P>此处fieldname的值分别为:BLANK, TAGNAME, TAGID ,ZTNAME, ZT3DNAME</P> <P><BR>请高手给小弟指点一下,谢谢!<BR> </P> |
|