无痕发表于2008-2-16 18:51:00 没有你说的问题:(defun c:ttD (/ BLKREF) (setq BLKREF (vlax-ename->vla-object (car (Nentsel \"\n 删除块属性,点选:\")))) (vla-DELETE BLKREF))(defun c:tt (/ BLKREF)&nb
先谢过,我这样删除属性的: (defun c:tt (/ ss1 Height sslenth n) (setq ss1 (ssget '((0 . "INSERT")))) (setq sslenth (sslength ss1)) (setq BLK (ssname ss1 0)) (if (and (setq BLKREF (vlax-ename->vla-object BLK)) (= (vlax-get-PROPERTY BLKREF "Hasattributes") ':vlax-true) ) (progn (setq ENT (vlax-safearray->list (vlax-variant-value (vla-getattributes BLKREF)) ) ) (vla-Delete (car ENT)) (vlax-invoke-method (car ENT) 'Update) (vlax-invoke-method BLKREF 'Update) ) ) ) 然后执行下面这段,下面这段执行到红色部分就出错: (defun c:tt (/ BLKREF) (setq BLKREF (vlax-ename->vla-object (car (entsel)))) (vla-getattributes BLKREF) ) |