因为你的程序中没有判断当前双击的对象是不是你所附着的对象,所以不管你双击谁都会有信息的,可以这样改一下: (defun c:asdf (/ ss) (setq ss (vlax-ename->vla-object (car (entsel)))) (vlr-mouse-reactor (list ss) '((:vlr-beginDoubleClick . fdsa)) ) ) (defun fdsa (a b) (setq en (nentselp (car b))) (if en (progn (if (> (length en) 2) (progn (setq en (last (last en))) ) (progn (setq en (car en)) ) ) (if (eq (vlax-vla-object->ename (nth 0 (vlr-data a))) en) (progn (princ "\n") (princ (vla-get-Length (nth 0 (vlr-data a)))) (princ "\n") (princ b) (princ "\n") (princ "yes") ) (princ "\n所选的直线不是附着的直线!") ) ) ) (princ "\n") (princ) )
|