浏览问题
等待回复
精选文章
申请试用
资源中心
漏洞修复
注册
|
登录
SuperMap技术问答社区
我要
提问
智能客服
首页
/
浏览问题
/
组件GIS
/
问题详情
Object .net 中Map对象保存与关闭
YYM
28EXP
2017年03月29日
调用 ((MapControl)control).Map.Close()关闭地图的时候是默认了要保存编辑内容的吗,怎么在关闭当前地图的时候能不保存对地图做出的编辑呢
idesktop
请
登录
或者
注册
后回答这个问题。
1个回答
你好,请问你用的产品是iObjects .NET还是iObjects Java还是iObjects C++
胡林
5,985EXP
2017年03月29日
是在object .net里面
你好,直接关闭地图,是不会保存编辑内容的,对地图操作后,必须保存地图才会将编辑后的新地图保存到工作空间的地图节点下面
我调用m_mapcontrol.Action=SuperMap.UI.Action.CreatePolyline设置了当前状态为创建折线,然后用鼠标在地图的可编辑线图层里面画了一条线,然后调用 m_mapcontrol.Map.Close()关闭当前地图。但是当我重新打开地图的时候这条新添加的折线确实也还存在啊,我也没调用什么保存的方法,有没有其它地方会影响到地图编辑的保存的呢
这是因为你创建的折线,直接把折线数据记录在数据集里面了,这样肯定改变了地图。有两个方法解决。
1.把对象绘制到跟踪图层上,这样直接关闭地图的时候就不会保存对象
2.在开始编辑图层之前,记录图层对应数据集中最后一条记录的smid,在直接关闭地图的是时候,把记录的smid之后的对象全部删除
哦,知道了,谢谢.那是不是比较好的方法可以用调用EditHistory.BatchCancel()来撤销对地图的操作呢
这个也是可以的,方法很多,重点的要记录到开始编辑时候对象的索引,另外跟踪图层是不会保存到数据集里面的,可以好好利用这个接口
请
登录
或者
注册
后再添加评论。
智能推荐
相关问题
相关文章
推荐教程
idesktop三维模型保存场景和工作空间关闭再打开后三维模型没了
Desktop 10 .net 二次开发中,如何关闭IFormScene等窗口
supermap object .net 8 如何添加对象的闪烁
工作空间修改后,关闭窗体程序如何设置成不自动保存?
object.net怎么生成sci缓存配置文件
.net插件开发关闭MapControl具体实现代码
iobject .net 10i如何修改与保存3DKML图层
11i的net组件中Map相关控件,快速操作时报出异常
热门文章
查看更多>
关注我们
超图软件官网
SuperMap Online
地图慧
帮助中心
备案信息
技术资源中心
...