cad自动运行dvb lisp_当在AutoCAD中保存文件时自动执行AutoLISP脚本程序 | 坐倚北风...

在AutoCAD中我们可以使用AutoLISP的vlr-command-reactor函数来监听文件的保存事件FileOnSave,当监听到此命令时可以自动执行AutoLISP脚本来完成相应的工作。整个流程代码如下:

(defun AtSaveCommand (calling-reactor b)

(if

(or

(= (car b) "QSAVE")

(= (car b) "SAVEAS")

(= (car b) "SAVE")

)

(保存文件时要执行的代码)

)

)

(defun loadTheSaveReactor ()

(vl-load-com)

(if *FileOnSave* (vlr-remove *FileOnSave*))

(setq *FileOnSave*

(vlr-command-reactor nil '((:vlr-commandwillStart . AtSaveCommand)))

)

)

(loadTheSaveReactor)

使用此流程时需要注意:(1)不能在代码中执行更改即将保存的AutoCAD文档内容的命令,因为更改AutoCAD文档内容后必须再次执行保存动作,这样会造成死循环;(2)可以在此流程中执行对话框相关命令。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值