我来个简单的。command法。 - (defun c:mm (/ ss *error*_New)
- (defun *error*_New (msg)
- (if *error*_Old
- (setq *error* *error*_Old)
- )
- (if cmd_old
- (setvar "cmdecho" cmd_old)
- )
- (if (wcmatch (strcase msg t) "*break,*cancel*,*exit*,*取消*")
- (princ)
- )
- (setq cmd_old (getvar "cmdecho"))
- (setvar "cmdecho" 0)
- (command "undo" "e")
- (if cmd_old
- (setvar "cmdecho" cmd_old)
- )
- (princ)
- )
- (setq *error*_Old *error*)
- (setq *error* *error*_New)
- (if (setq ss (ssget ":E:S"))
- (progn
- (setq cmd_old (getvar "cmdecho"))
- (setvar "cmdecho" 0)
- (command "undo" "be")
- ;(command "_cutclip" ss "")
- (command "_copyclip" ss "")
- (princ "\n指定位置:")
- (command "_pasteclip" pause)
- (command "erase" ss "")
- (command "undo" "e")
- (if cmd_old
- (setvar "cmdecho" cmd_old)
- )
- (if *error*_Old
- (setq *error* *error*_Old)
- )
- )
- (princ "\n未选中对象!")
- )
- (princ)
- )
|