只需一步,快速开始
请教大家,怎样在AutoLisp程式控制“对象捕捉”的开与关?
我的是2005版, Thanks very much!
使用道具 举报
先说好我是新手,我觉得把用(setvar "osmode" 0)
和(setvar "osmode" oc)应该可以吧,oc是程序运行前的osmode值
谢谢二楼的朋友,我也很菜啊
程序开头加句(setq oc (getvar "osmode"))
结束的时候用(setvar "osmode" oc)改回去就可以了
谢谢,搞定了。
这样保存或恢复变量,当程序运行至中途按ESC强行退出,系统变量不会被恢复。也就是说(setq oc (getvar "osmode"))所保存下来的值,还来不及使用(setvar "osmode" oc)时程序就退出了。而且大部分使用AutoCAD的用户都习惯了在命令已经发布了,又想取消时用ESC。造成程序出错。
建议大家使用ap-api函数,它可以解决这一系列的问题。
自定义一下错误处理函数,在错误处理函数中也恢复这个变量就可以了...
请问 meflying:
你所说的 "自定义一下错误处理函数,在错误处理函数中也恢复这个变量就可以了..."
是不是 acet-error-init 和 (acet-error-restore) 有关?
但是我这里说这个函数未定义呢,那怎么办?? 请赐教!
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2024-5-4 05:09 , Processed in 0.365096 second(s), 25 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.