Sage. 发表于 2013-4-30 03:05:36

已删除的实体如何撤销删除?

做一个连续删除的命令

似乎简单的ent.Erase(false);是不行的,提示eWasErased

如何做到撤销删除的操作,难道要再重新添加一遍实体?

部分代码如下,不知道还缺少什么东西,最好能有代码演示,谢谢啦

                  //以删除的实体
                  ObjectIdCollection erasedEntityID = new ObjectIdCollection();
                  //如果用户选择撤销关键字,则撤销删除                  
                  if (getEntity.Status == PromptStatus.Keyword)
                  {
                        Entity ent = trans.GetObject(erasedEntityID, OpenMode.ForWrite) as Entity;
                        ent.Erase(false);
                        erasedEntityID.RemoveAt(erasedEntityID.Count - 1);
                        trans.Commit();
                  }
                  else if (getEntity.Status == PromptStatus.OK)
                  {
                            Entity ent = trans.GetObject(getEntity.ObjectId, OpenMode.ForWrite) as Entity;
                            ent.Erase();
                            trans.Commit();
                  }

frandy 发表于 2013-5-1 22:30:03

使用命令u回去就是啊

sieben 发表于 2013-5-2 07:08:52

1,删除了应该也就不能再回复了
2,你不妨试试画10000个图形实体,看看Dwg文件多大,再把这一万个图形实体删除,再看看Dwg文件多大。

Sage. 发表于 2013-5-2 21:05:12

frandy 发表于 2013-5-1 22:30 static/image/common/back.gif
使用命令u回去就是啊

undo的话就全部都还原了呀~

Sage. 发表于 2013-5-2 21:08:24

sieben 发表于 2013-5-2 07:08 static/image/common/back.gif
1,删除了应该也就不能再回复了
2,你不妨试试画10000个图形实体,看看Dwg文件多大,再把这一万个图形实体 ...

那如何才能做掉暂时删除,以便误操作的时候可以马上恢复,而不用中断命令
页: [1]
查看完整版本: 已删除的实体如何撤销删除?