让一个自定义命令一直重复运行,直到esc取消要怎么写
(defun c:x()(a)
)
怎么给(a)加个套让他直到用户取消才不运行/谢谢指教下。
While 如何 LISP具体不清楚,不过感觉理论上不大可行,除非加别的手段。如果要相应用户按键,那么就要停下来等待用户交互,不按键就不继续。如果要继续,也就是不响应用户按键,那么按ESC也就无效。 while (Esc 这个键的条件)要怎么获到。我就是要这个代码,插进(a)里,让他停下来。 (while testexpr )
(a)的返回值為何!?
(while (a))
or
(while (not (a)))
Try... 我把(a)插入自身,他就一直重复运行了,esc也能取消,
但是有个问题我在(a)打开过一个文件,esc取消时他还没保存,要怎么让他取消时保存一下呢
(close ff) 请参考 *error* 函数
应用例请直接在坛内搜...
我截段代码。三领外挂的
(setq loop t)
(princ (strcat "\n【空格】【回车】复制距离<" (rtos sldis1 2 2) ">:【右键】【ESC键】退出"))
(while (= t loop);命令期间如果按下空格、回车、右健时结束命令
(setq grr (grread t ));请求输入
(setq gr(car grr))
(cond
((or(equal grr '(2 32));空格
(equal grr '(2 13));回车
)
(setq pt2 (polar pt2 ang sldis1))
(command "COPY" s "" pt1 pt2)
)
((equal grr'(11 0));右击
(setq loop nil)
)
)
)
页:
[1]