以前网上下的,在2012下锁定不能变灰?如何改?
(defun c:laylock ()(vl-load-com)
(setq acadObject (vlax-get-acad-object))
(setq acadDocument (vlax-get-property acadObject 'ActiveDocument))
(setq LayersObj(vla-get-layers acadDocument ))
(setq k T)
(while k
(setqlayent(entsel "\n请选取要锁定或解锁层中的一个实体<退出>: "))
(if layent
(progn
(setqlayent(car layent))
(setqlayentvla(vlax-ename->vla-objectlayent))
(setq laystr (vla-get-layerlayentvla))
(setq layvla (vla-item LayersObjlaystr))
(setq laylock (vla-get-locklayvla))
(if (=laylock :vlax-false)
(progn
(vla-put-locklayvla:vlax-True)
(princ (strcat "\n" laystr" 层已锁"))
(entmod lay_ent)
)
( progn
(vla-put-locklayvla:vlax-false)
(princ (strcat "\n"laystr" 层已解锁"))
)
)
)
(setq k nil)
)
)
(princ)
)
(c:laylock)
貌似要保存一下,再重生成就可以变灰了
页:
[1]