denvercool 发表于 2012-12-3 20:38:44

我这个lsp哪里不对啊?请指教

我的目的是编一个copy的程序,当输入命令c以后,对象捕捉关闭.当我复制完了以后,对象捕捉再全部打开.但是我的这个程序运行的时候,在复制之前,对象捕捉功能就全部打开了,我不知道问题在哪里,请高手指教

(defun C:c ()
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "copy")
(setvar "osmode" 15359)
(setvar "cmdecho" 1)
(princ))

Andyhon 发表于 2012-12-3 21:38:38

(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line

LIL5E 发表于 2012-12-3 21:58:26

Andyhon 发表于 2012-12-3 21:38 static/image/common/back.gif
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line

可以解释下添加这句啥意思吗~顺便告诉下小弟怎么查询全局变量

denvercool 发表于 2012-12-3 22:07:31

Andyhon 发表于 2012-12-3 21:38 static/image/common/back.gif
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))   ; add this line

可以了,谢谢,能不能解释下原理?

denvercool 发表于 2012-12-4 11:14:43

(defun C:c ()
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "copy")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))
(setvar "osmode" 15359)
(setvar "cmdecho" 1)
(princ))

经过楼上提醒以后,加了一句话,确实能用了,但是还有一个问题,就是copy的时候只能一个一个选,不能框选,有没有办法解决啊?
页: [1]
查看完整版本: 我这个lsp哪里不对啊?请指教