DCL对话框卡在循环中
编辑:我已经把范围缩小到橙色的代码。输入序列号后,第一个对话框似乎没有关闭。很明显,我在关闭对话框时出错了。我对DCL还比较陌生,现在要解决问题有点挑战性。我认为与其说是DCL,不如说是LISP
基本上我有两个对话框。
第一个请求序列号,第二个请求授权码
序列号检查有效,然后继续询问授权码。
问题是,无论授权代码是正确的还是错误的,在按下对话框上的OK按钮后,第1个对话框再次出现,编辑框中带有序列号。
一旦发生这种情况,AutoCAD就会被卡住,无法中断对话框中发生的任何事情。必须按住ctrl+alt+delete,然后结束任务才能关闭AutoCAD
我卡住了。
这是代码
DCL第一箱:
第二个DCL对话框代码:
这里是一些lisp:
这里是最后一个被调用的函数,在那里所有事情都出错了
3 这对我有效(action\u tile“sizze”“(setq item$value)(done\u对话框)”)返回项
谢谢你,我以前试过,但对我不起作用。我已经设法更改代码,使事情变得更好,但无论我做什么,我都无法关闭第一个对话框。我真的不明白问题出在哪里。 您的第一个对话框不会再次显示,它只是没有关闭,因为它的START\u对话框调用没有到达;我对你的代码做了一些调整:
4 太好了,谢谢你,看起来不错。我稍后会试一试,然后告诉你我怎么做。 祝你好运我还对你的代码进行了一些优化,你可能会发现这也很有用。 好吧,这似乎不起作用。它确实关闭了对话框,但除此之外什么也没做。如果你输入了正确或错误的代码,它只会关闭对话框。没有调用警报,也没有调用其他函数。有什么想法吗?谢谢 请注意,以上我只张贴了两个功能,我调整;您应该在代码中只替换它们。另外,请再次检查我的帖子,因为我修复了您的DCL的名称(它被更改为适合我的测试环境)。 是的,我注意到了变化,但做了调整。出于某种原因,它就是不起作用。然而,我现在已经根据您告诉我的,在DCL对话框未加载的情况下使其工作。
我几乎恢复了我的初始代码,但有一个例外:
5
现在它工作了。再次感谢
页:
[1]