
- (vl-load-com)
- (if (not ea:ansyscmd)
- (setq ea:ansyscmd
- (vlr-editor-reactor
- nil
- '(
- (:vlr-commandWillStart . WSCmd)
- (:vlr-unknownCommand . UKCmd)
- (:vlr-commandended . WSCmdend)
- (:vlr-commandcancelled . WSCmdend)
- )
- )
- )
- )
- (defun WSCmd (var1 var2 / doc) ;_命令回调
- (if (not (tblsearch "layer" "1"))
- (progn
- (vla-add
- (vla-get-layers
- (setq doc (vla-get-activedocument (vlax-get-acad-object)))
- )
- "1"
- )
- (vla-SetVariable doc "clayer" "1")
- )
- (vla-SetVariable
- (vla-get-activedocument (vlax-get-acad-object))
- "clayer"
- "1"
- )
- ) ;_没有"1"层则应先创建。此处没错误。
- )
- (defun UKCmd (var1 var2 / doc)
- ;; (princ "\n111111111111111")
- (vla-sendcommand
- (setq doc (vla-get-activedocument (vlax-get-acad-object)))
- (chr
- 3
- )
- )
- (vla-SetVariable doc "clayer" "0")
- ;;(princ "\n222222222222222")
- )
- (defun WSCmdend (var1 var2 /)
- (vla-SetVariable
- (vla-get-activedocument (vlax-get-acad-object))
- "clayer"
- "0"
- )
- )
- ;|;Written By AIdraft
- (defun SendKeys (keys / ws)
- (setq ws (vlax-create-object "WScript.Shell"))
- (vlax-invoke-method ws 'sendkeys keys)
- (vlax-release-object ws)
- (princ)
- )|;
|