Millsy29 发表于 2022-7-6 10:47:56

删除除mod外的所有选项卡

这是归档过程的一部分,我们将图形的空壳放在电子传递旁边的归档文件夹中,以便您知道是否要覆盖归档图形,删除选项卡只是清理过程的一部分。因此,基本上,如果一个图形有5个选项卡,我们为每个布局选项卡归档5次1。
 
我想自动删除所选选项卡旁边的所有选项卡,无论是当前选项卡还是通过lisp例程键入的名称。
 
另外,我是一个新手,我可以通过appload加载lisp,但我不知道如何找到命令来激活加载的lisp,有人能帮我吗?
 

(defun c:deletetabs ()
(setq *doc (cond (*doc)
   ((vla-get-ActiveDocument
   (vlax-get-acad-object)))))
   (vlax-for lay(vla-get-layouts *doc)
   (if (not (eq "MODEL" (strcase (vla-get-Name lay))))
       (vla-delete lay)))
)

谢谢
 
米尔西

rkmcswain 发表于 2022-7-6 11:13:54

1.你的意思是它自动创建的新布局1包含视口吗?这是“选项”中“显示”选项卡上“布局元素”下的设置(“在新布局中创建视口”)
 
2.命令名是“C”后面的部分:在本例中为“DeleteTabs”。但并非所有的lisp函数都包含“C:”。有些可能没有前缀,或有不同的前缀,但只能像普通命令一样键入带有“C:”前缀的函数。

Millsy29 发表于 2022-7-6 11:20:58

谢谢,C:表示命令提示符。。。
 
这是归档过程的一部分,我们将图形的空壳放在电子传递旁边的归档文件夹中,以便您知道是否要覆盖归档图形,删除选项卡只是清理过程的一部分。因此,基本上,如果一个图形有5个选项卡,我们为每个布局选项卡归档5次1。
 
我想自动删除所选选项卡旁边的所有选项卡,无论是当前选项卡还是通过lisp例程键入的名称。
 
谢谢

Lee Mac 发表于 2022-7-6 11:34:43

嗨,米莉,
 
这将删除所有选项卡(正在重新创建布局1)。
 
但它几乎与你所拥有的一模一样。
 

(defun c:DeleteAllTabs nil
(vl-load-com)
;; © Lee Mac 2010

(vlax-for l
   (vla-get-Layouts
   (vla-get-ActiveDocument
       (vlax-get-acad-object)
   )
   )
   (if (not (eq "MODEL" (strcase (vla-get-Name l))))
   (vla-delete l)
   )
)

(princ)
)

 
也许可以在这里看到:
 
http://www.cadtutor.net/forum/showthread.php?t=42431

Millsy29 发表于 2022-7-6 11:59:36

嗨,李
 
很抱歉,有点不理解我被要求用这个lisp做什么,我们为每个选项卡归档了一个图形。因此,我想删除除我正在存档的选项卡之外的所有其他选项卡,并尝试在lisp例程中执行它。
 
米尔西
页: [1]
查看完整版本: 删除除mod外的所有选项卡