明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2985|回复: 3

在arx编程中怎样屏蔽AutoCad本身的恢复、撤销机制?

[复制链接]
发表于 2012-2-15 15:23:47 | 显示全部楼层 |阅读模式
1明经币
现在想用arx做个小功能:
描述:
      利用arx在AutoCAD中生成了很多自定义实体,现在由于一些原因,要将生成的自定义实体保护起来,即生成后不能被用户给删除掉,比如:用户不能按Del键将自定义实体删除、也不能按ctrl+z撤销已经生成好的自定义实体,有人做过么?我现在能想到的方法是用hook勾起到用户按下ctrl+z按钮,但获取到这个消息后还是不知道怎么阻止用户撤销自定义实体,高人们帮帮忙啊!!!

最佳答案

查看完整内容

生成自定义实体前,关闭UNDO,待自定义实体生成后,再打开UNDO。 Command: undo Enter the number of operations to undo or [Auto/Control/BEgin/End/Mark/Back] : c Enter an UNDO control option [All/None/One] : none
发表于 2012-2-15 15:23:48 | 显示全部楼层
生成自定义实体前,关闭UNDO,待自定义实体生成后,再打开UNDO。

Command: undo
Enter the number of operations to undo or [Auto/Control/BEgin/End/Mark/Back]
<1>: c
Enter an UNDO control option [All/None/One] <All>: none
回复

使用道具 举报

发表于 2012-2-15 22:12:26 | 显示全部楼层
从自定义实体的 subErase 函数着手,会不会有用
回复

使用道具 举报

 楼主| 发表于 2012-2-16 09:51:07 | 显示全部楼层
hgf876 发表于 2012-2-15 22:12
从自定义实体的 subErase 函数着手,会不会有用

恩  谢谢哥们的回答,我也这样试过,但这样只对Del有用,但对撤销没用,撤销还是可以删除实体,不管在subErase中将返回值设定成什么都不行,不知道有没有什么方式可以在用户点击了ctrl+z后就直接跳过自定义实体的删除(subErase)函数呢?  或者有什么其他的方式?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-24 00:12 , Processed in 0.183219 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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