明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 446|回复: 2

快递关闭块程序,如果是参照块,关闭参照块,如果是普通块关闭普通块

[复制链接]
发表于 2025-1-16 17:55:24 | 显示全部楼层 |阅读模式
(defun c:ra (/ acadDoc isBlockEditor)
  ;; 获取当前文档
  (setq acadDoc (vla-get-ActiveDocument (vlax-get-acad-object)))

  ;; 检查是否处于块编辑器模式
  (setq isBlockEditor
    (and
      (= (vla-get-ActiveSpace acadDoc) acModelSpace) ; 检查是否在模型空间
      (vlax-property-available-p acadDoc 'IsDynamicBlock) ; 检查是否支持动态块
      (vla-get-IsDynamicBlock acadDoc) ; 检查是否处于动态块编辑模式
    )
  )

  ;; 根据状态执行相应操作
  (if isBlockEditor
    (progn
      (command "_bclose" "s" pause) ; 关闭块
      (princ "\n已关闭块。")
    )
    (progn
      (command "_refclose" "s") ; 关闭参照块
      (princ "\n已关闭参照块。")
    )
  )
  (princ)
)
  1. (defun c:ra (/ acadDoc isBlockEditor)
  2.   ;; 获取当前文档
  3.   (setq acadDoc (vla-get-ActiveDocument (vlax-get-acad-object)))

  4.   ;; 检查是否处于块编辑器模式
  5.   (setq isBlockEditor
  6.     (and
  7.       (= (vla-get-ActiveSpace acadDoc) acModelSpace) ; 检查是否在模型空间
  8.       (vlax-property-available-p acadDoc 'IsDynamicBlock) ; 检查是否支持动态块
  9.       (vla-get-IsDynamicBlock acadDoc) ; 检查是否处于动态块编辑模式
  10.     )
  11.   )

  12.   ;; 根据状态执行相应操作
  13.   (if isBlockEditor
  14.     (progn
  15.       (command "_bclose" "s" pause) ; 关闭块
  16.       (princ "\n已关闭块。")
  17.     )
  18.     (progn
  19.       (command "_refclose" "s") ; 关闭参照块
  20.       (princ "\n已关闭参照块。")
  21.     )
  22.   )
  23.   (princ)
  24. )


评分

参与人数 1明经币 +1 收起 理由
USER2128 + 1 鼓励鼓励

查看全部评分

回复

使用道具 举报

发表于 2025-1-17 10:01:18 | 显示全部楼层
本帖最后由 USER2128 于 2025-1-17 10:05 编辑

;;; 感觉这个有用,重写了一下程序
  1. ;;; 快速关闭块编辑器程序.
  2. (defun c:BC ()
  3.   (cond
  4.     ((= 1 (getvar "BLOCKEDITOR"))   ;块编辑器.
  5.      (command "_bclose" "s")
  6.      (princ "\n已关闭块编辑器。")
  7.      )
  8.     ((/= "" (getvar "REFEDITNAME")) ;在位编辑.
  9.      (command "_refclose" "s")
  10.      (princ "\n已关闭在位块编辑器。")
  11.      )
  12.     (t (princ "\n仅用于关闭块编辑器."))
  13.     )
  14.   (princ)
  15.   )
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-5 16:46 , Processed in 0.214052 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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