请教:LISP程序中用princ/grtext等输出的信息不能及时显示出来,有解决办法吗?
请教:LISP程序中需要执行一段耗时较长的代码时,执行前用princ/grtext等输出的提示信息,但不能及时显示出来,通常是后面耗时长的代码执行完成后才显示出来,失去了提示的意义。不知道有没有高手研究过这个问题,有没有解决办法吗?(vla-eval (vlax-get-acad-object) "DoEvents") tengte 发表于 2018-7-26 12:24
这个与(princ "\n")没有区别
先用(setvar "cmdecho" 0) 关闭CAD操作的提示
在用
(princ "\n [ ---------------- 開始 --------------- ]")
每运行那里就会提示出来 本帖最后由 elitefish 于 2018-12-17 22:51 编辑
写一个 dcl ,里面写上你的提示内容,设置一个 default 按钮 但什么都不允许操作
用 new_dialog 加载后不要用start_dialog
等你的循环结束后直接调用 (done_dialog 0)
来关闭对话框 换行符号在作怪,把(princ "\n")和(princ msg)给它分开用。 nzl1116 发表于 2018-7-23 20:18
换行符号在作怪,把(princ "\n")和(princ msg)给它分开用。
谢谢您的回复!试过了,没有效果 加(prompt "") tengte 发表于 2018-7-24 10:49
谢谢您的回复!试过了,没有效果
你是怎么分开的? 我自己用的都是用 alert 提示一些错误或需要注意的地方 nzl1116 发表于 2018-7-24 15:23
你是怎么分开的?
(princ "\n提示信息\n")
(princ "\n")
这样也没用,把princ换成prompt也是一样的 (princ "\r")
试试这个
不保证一定行 masterlong 发表于 2018-7-25 15:26
(princ "\r")
试试这个
不保证一定行
这个与(princ "\n")没有区别
页:
[1]
2