找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 411|回复: 6

[求助] 请教高手:对话框确定、取消、帮助( ok_cancel_help)按钮的操作问题

[复制链接]
发表于 2020-6-2 16:05:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
     (setq dcl_id (load_dialog "qx4.dcl"))
     (if (not (new_dialog "qx4" dcl_id)) (exit))

         (action_tile "filein" "(getf)")
         (action_tile "fileout" "(outf)")
         (action_tile "help" "(hlp)")
         (action_tile "accept" "(ok)")
;   (if (=  1 (start_dialog))
;            (ok)
;        )
     (start_dialog)
     (done_dialog)
     (unload_dialog dcl_id)

请教高手:带分号的3行,如果去分号的话,程序运行后点”确定“和”取消“按钮都会出错,提示:错误: 参数类型错误: stringp nil。
如果注释掉这三行,点"确定“按钮正常运行,点”取消“按钮出错。不明白为啥,不知哪位高手能帮忙解释一下,谢谢!

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 40个

财富等级: 招财进宝

发表于 2020-6-2 16:40:23 | 显示全部楼层
done_dialog后,AUTOCAD才接管,才能继续执行LISP
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

发表于 2020-6-3 09:06:24 | 显示全部楼层
比较标准的写法为:
  ...
  (action_tile "accept" "(ok)")
  (action_tile "cancel" "(done_dialog)")
  (setq dcl_ok (start_dialog))
  (if (= dcl_ok 1) (dofunc))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-4 05:17:58 | 显示全部楼层
本帖最后由 jsygsl 于 2020-6-4 05:27 编辑

感谢 newer 和原地踏步两位高手的指教,谢谢!还麻烦再帮忙看看:
把程序按照如下内容改好运行后,点击“确定”运行正常,但点击“取消”,依旧提示  “错误: 参数类型错误: stringp nil”  ,还不是正常退出的状态。 这个问题咋能解决好?谢谢!
        (action_tile "accept" "(ok)")
         (action_tile "cancel" "(done_dialog)")
         (setq dcl_ok (start_dialog))
         (if (= dcl_ok 1) (ok))
         (unload_dialog dcl_id)

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-5 10:11:16 | 显示全部楼层
各位高手,为啥点“取消”按钮出错?还请帮忙解释一下,虽然不影响程序的运行,但感觉不完善
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

发表于 2020-6-5 15:30:24 | 显示全部楼层
没遇到过这种情况。done_dialog什么都不做,直接退出程序,怎么可能出错呢?倒是你重复运行两次ok,很有可能出错。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-8 22:29:45 | 显示全部楼层
多谢帮忙,我把这个语句单独拿出来,不会出错。可能还是程序的一些变量有关系。谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-25 03:04 , Processed in 0.283250 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表