StevenMc 发表于 2022-7-6 12:52:03

另一个清除口齿不清。。。

你好
 
我想知道是否有人能帮我解决Lisp程序。。。
我环顾四周,寻找一个可以“清除所有”但没有任何运气的Lisp程序。似乎有很多清除Lisp程序有,但我看不到任何只是清除所有。这是我唯一想清除的图纸。我试着自己做,并将附上我的简单步骤(不要笑)
 
(定义C:PA()
(命令“purge”“all”)
(普林斯)
)
 
当我这样做的时候,这就是出现的。。。
 

 
我只想清除所有
 
干杯
史蒂文

gile 发表于 2022-7-6 12:56:07

你好
 
您可以这样尝试:
(command "_.purge" "_all" "" "_no")
 
如果您也想清除已注册的应用程序,请添加以下内容:
(command "_.purge" "_regapp" "" "_no")

Lee Mac 发表于 2022-7-6 13:00:52


(defun c:pAll (/ doc)
(vl-load-com)
(setq doc (vla-get-ActiveDocument
             (vlax-get-acad-object)))
(repeat 3 (vla-PurgeAll doc))
(princ))

David Bethel 发表于 2022-7-6 13:04:25

虽然重复3次已经有很多年了,但这并不能保证所有嵌套块都被清除。
 
为确保设置DBMOD:

(command "_.ZOOM" "_C" "" "")

 
然后:

(while (> (getvar "DBMOD") 0)
      (command "_.PURGE" "_All" "*" "_No"))

 
-大卫

MarcoW 发表于 2022-7-6 13:05:09

反过来说:李,当我给你以下错误时,我尝试了什么
 

no function definition: VLA-AUDITALL

 
对,这就是我试过的。如何扩展例程以进行清除和审核。然后我的意思不是说。。。
 

(command "audit" "y" )

 
...但有一些视觉Lisp程序。
 
思想:
此类例程应在每个图形启动时运行。这很容易做到。可以在“关闭”图纸时完成吗?但不是通过将命令“pAll”添加到“save”按钮宏。
因为有一个s:startup函数,可能有一个s:close

Lee Mac 发表于 2022-7-6 13:11:10

这可以通过使用反应器对关闭函数进行反应来实现(但在WillStart上,而不是CommandEnded上,否则会遇到一些麻烦!)。
 
vla AuditInfo是您正在寻找的函数-请在VLIDE帮助中查看它。

StevJ 发表于 2022-7-6 13:11:34

我把这个宏绑定到一个按钮上。
我对按钮进行了两到三次良好的敲击,它基本上清除了我画作中的垃圾:
 

^C^C-purge;a;*;n;-purge;r;*;n;-scalelistedit;R;Y;E;

alanjt 发表于 2022-7-6 13:14:41

vla PurgeAll很棒,但我认为每个人都应该知道,它不会清除mleader样式。它完全忽略了它们。

Lee Mac 发表于 2022-7-6 13:20:08

我不知道,艾伦,谢谢

alanjt 发表于 2022-7-6 13:23:00

是的,有一天我碰巧注意到了,我不得不回到启动时的(清除)命令。
页: [1] 2
查看完整版本: 另一个清除Lisp程序。。。