找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1428|回复: 7

[已解决] 【已解决】一个关于ACTION_TILE 函数的问题

[复制链接]
发表于 2018-10-17 21:27:37 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 wgl7212191 于 2018-11-8 12:44 编辑

  1. (DEFUN C:IMG( )
  2. (SETQ DCL_ID (LOAD_DIALOG "D:\\Program Files\\CADtools/IMG.DCL") TMP 1)
  3. (NEW_DIALOG "IMG" DCL_ID)
  4. (ACTION_TILE "IMG1" "(setq tmp 1)")
  5. (ACTION_TILE "IMG2" "(setq tmp 0)")
  6. (START_DIALOG)(UNLOAD_DIALOG DCL_ID)
  7. (IF (= TMP 1)(COMMAND "COLOR" "YELLOW")
  8. (COMMAND "COLOR" "GREEN"))
  9. (PRINC)
  10. )


注意(ACTION_TILE "IMG1" "(setq tmp 1)")这两句。下面根据此两句设置的TMP变量设置颜色。如果改成下面为什么就执行死程序呢?
  1. (DEFUN C:IMG( )
  2. (SETQ DCL_ID (LOAD_DIALOG "D:\\Program Files\\CADtools/IMG.DCL") TMP 1)
  3. (NEW_DIALOG "IMG" DCL_ID)
  4. (ACTION_TILE "IMG1" "(COMMAND \"COLOR\" \"YELLOW\")")
  5. (ACTION_TILE "IMG2" "(COMMAND \"COLOR\" \"GREEN\")")
  6. (START_DIALOG)(UNLOAD_DIALOG DCL_ID)
  7. (PRINC)
  8. )


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

已领礼包: 5188个

财富等级: 富甲天下

发表于 2018-10-17 21:34:08 | 显示全部楼层
在 action_tile 函数中不能调用 AutoLISP 的 Command 函数。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-10-17 21:36:48 | 显示全部楼层
不要把COMMAND放到对话框里面,要关闭对话框,才能执行COMMAND
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-17 21:43:36 | 显示全部楼层
谢谢两位,教程上没这么说啊?

点评

难道教程说了可以执行COMMAND?  详情 回复 发表于 2018-10-17 21:59
你看的教程没说,其他的说了呗  详情 回复 发表于 2018-10-17 21:50
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-10-17 21:50:48 | 显示全部楼层
wgl7212191 发表于 2018-10-17 21:43
谢谢两位,教程上没这么说啊?

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

使用道具 举报

已领礼包: 2236个

财富等级: 金玉满堂

发表于 2018-10-17 21:59:22 | 显示全部楼层
wgl7212191 发表于 2018-10-17 21:43
谢谢两位,教程上没这么说啊?

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

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

发表于 2018-10-18 08:55:49 | 显示全部楼层
为某一对话框控件指定一个动作表达式,用户在对话框中选中这个控件时,就会执行该动作表达式
(action_tile key action-expression)
由 action_tile 函数指定的动作将取代对话框的缺省动作,缺省动作是由 new_dialog 函数指定或该控件的 action 属性(在指定了这些属性的情况下)。该动作表达式可以通过变量 $value 引用控件的当前值(即它的 value 属性),通过变量 $key 引用控件的关键字,通过变量 $data 引用控件的特定应用数据(假如需要这样的数据,可以由函数 client_data_tile 设置),通过变量 $reason 引用控件的回调原因。如果该控件是图像按钮的话,还可以通过变量 $x 和 $y 引用控件的图像坐标。

参数

key

要触发动作的控件的操作名字符串(由控件的 key 属性指定),它是区分大小写的。

action-expression

指定选定控件时所要求值的动作表达式的字符串。

注意 在 action_tile 函数中不能调用 AutoLISP 的 Command 函数。

返回值

T

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

使用道具 举报

 楼主| 发表于 2018-10-24 22:49:44 | 显示全部楼层
原地踏步 发表于 2018-10-18 08:55
为某一对话框控件指定一个动作表达式,用户在对话框中选中这个控件时,就会执行该动作表达式
(action_tile ...

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-14 20:07 , Processed in 0.382626 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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