明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1615|回复: 2

[求助]自己编了个小命令,使用后再撤销掉,发现不能一次性撤销掉,求教(已解决)

[复制链接]
发表于 2009-12-28 22:59:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2009-12-29 22:08:19 编辑

如题,本人编了个小程序,命名为qsw,主要功能:给多段线的每个顶点按顺序编号后,将顶点坐标输入到表格中。使用后发现一个问题:如果使用撤销命令撤销qsw,不能一次性把qsw撤销完毕,一次只能撤销qsw命令中的一个步骤。如果多段线顶点越多,那要撤销的步骤也越多。本人希望点击一次撤销命令就把一次性把qsw撤销完,希望高人指教。

如果谁能把这个问题解决,作为回报,我提供给他源代码,因为此命令可以正常使用,就是不好撤销,本人希望把它更完善。附效果图如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2009-12-29 00:21:00 | 显示全部楼层
这样就可以解决你的问题
  1. (setq ActDoc (vla-get-ActiveDocument (vlax-get-Acad-Object)))
  2. (vla-EndUndoMark ActDoc)
  3. (vla-StartUndoMark ActDoc)
  4. .......
  5. (......);你的中间过程
  6. ........
  7. (vla-EndUndoMark ActDoc)
发表于 2009-12-29 09:39:00 | 显示全部楼层

简单点就用COMMAND

在开始时用:

(command"undo" "BE")

......

(command"undo" "e")

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-10-1 21:26 , Processed in 0.162860 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表