为什么多个command命令只能执行一个?
为什么多个command的命令只能执行一个?后面的会自动跳出程序,忽略执行!如下面的代码所示,执行多段线程序后就跳出程序了,没有继续执行circle命令。(defun c:tt ()
(command "_.pline")
(command "circle")
(setq objLine (entlast))
)
Andyhon 发表于 2019-6-21 08:35
(defun c:tt ()
(command "_.pline")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause) ...
这是什么神仙操作?
版主能讲解一下吗? ysq101 发表于 2019-6-25 23:31
这是什么神仙操作?
版主能讲解一下吗?
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause));等待上一个命令完成再执行接下来的命令 (defun c:tt ()
(command "_.pline")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause))
(command "circle")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause))
(setq objLine (entlast))
) 因为你的语句不完整,(command "_.pline")就结束了?后续是要求点坐标的,结果你又来一个command,只能是出错退出,还执行啥。 就是呀,不完整让CAD怎么操作呢 Andyhon 发表于 2019-6-21 08:35
(defun c:tt ()
(command "_.pline")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause) ...
谢谢!完美解决问题!!! satan421 发表于 2019-6-21 08:18
因为你的语句不完整,(command "_.pline")就结束了?后续是要求点坐标的,结果你又来一个command,只能是出 ...
就是要这种不完整的,以便后面可以画多段线,有大神解决了问题,不过同样谢谢你的解答!! (defun c:tt ()
(command "copy" (ssget) "" "m")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause))
(command "_vpclip")
(while (= (logand (getvar 'CmdActive) 1) 1) (command pause))
(setq objLine (entlast)))
这个不断开:复制操作不可见,直接裁剪,可行吗
页:
[1]