ssscomic
路人甲
路人甲
  • 注册日期2007-01-08
  • 发帖数5
  • QQ
  • 铜币119枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1524回复:3

[求助]删除对象问题,请高手指点!

楼主#
更多 发布于:2007-01-19 19:10
<P>代码如下:</P>

<P>//! 清空一个图层<BR>HRESULT MOCtrl::ClearLayer(long index)<BR>{<BR> CMoMapLayer layer = m_pMap->GetLayers().Item(COleVariant(index)));</P>
<P> if(layer == NULL)<BR>  return E_FAIL;</P>
<P> CMoRecordset recs(layer.GetRecords());<BR></P>
<P> recs.MoveFirst();</P>
<P> while(!recs.GetEof())<BR> {<BR>  recs.Delete();</P>
<P>  recs.MoveNext();<BR> }</P>
<P> m_pMap->Refresh();</P>
<P> return S_OK;<BR>}</P>

<P>希望通过这个函数清空一个图层,结果调用之后,如果用recs.GetCount()看,发现里面不等于0。</P>
<P>如果调用recs.Update()就会在“void COleDispatchDriver::ReleaseDispatch()出错中,不知道是什么原因……</P>
<P>recs.GetUpdatable()的返回是TRUE,layer是在文件中打开的。</P>
<P>请问要实现这个功能应该怎么写才正确呢?非常感谢啊!</P>
喜欢0 评分0
ssscomic
路人甲
路人甲
  • 注册日期2007-01-08
  • 发帖数5
  • QQ
  • 铜币119枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2007-01-25 15:36
<P>看来各位高人队在下的问题不屑一顾啊……自行解决了……</P>
举报 回复(0) 喜欢(0)     评分
whmwxhanshan123
路人甲
路人甲
  • 注册日期2006-06-17
  • 发帖数3108
  • QQ
  • 铜币6445枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2007-01-25 20:34
<img src="images/post/smile/dvbbs/em08.gif" />
举报 回复(0) 喜欢(0)     评分
askay
路人甲
路人甲
  • 注册日期2004-11-10
  • 发帖数9
  • QQ
  • 铜币136枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2007-01-27 22:02
试试先调recs.edit 再delete,再update
举报 回复(0) 喜欢(0)     评分
游客

返回顶部