找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1015|回复: 15

[求助] [求助]:DCL的控件属性改变问题

[复制链接]
发表于 2004-5-19 10:05:20 | 显示全部楼层 |阅读模式

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

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

×
我想当key=1   的时候text box 的is-enabled=ture;
当key=0 的时候text box的is-enabled=false;
该如何实现,请帮忙了……
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-5-19 13:13:23 | 显示全部楼层
用这个函数:
(mode_tile "xxx" 0)  使指定控件可用。
(mode_tile "xxx" 1)  使指定控件不可用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-5-20 08:50:45 | 显示全部楼层
我是这样写的
(action_tile "tog1" "(if (equal "0" (get_tile \"tog1\"))(mode_tile \"lay1\" 1)(mode_tile \"lay1\" 0))")
可是为什么不行啊?
请指教!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-20 09:26:41 | 显示全部楼层
看上去是equal "0"这里的问题。
这样写简便一些:
(action_tile "tog1" "(mode_tile \"lay1\" (if (= \"0\" $value) 1 0))")
$value就是当前控件的值。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-5-20 16:53:40 | 显示全部楼层
老大,搞定,谢谢~

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

使用道具 举报

发表于 2004-5-20 22:49:08 | 显示全部楼层
最初由 aaddff 发布
[B]老大,搞定,谢谢~

但我的那种方式为什么不行啊?搞不懂 [/B]


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

使用道具 举报

 楼主| 发表于 2004-5-21 08:09:51 | 显示全部楼层
好象还是有问题,不如老大你的方式好
不知道$value 和get_tile有什么区别啊?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-21 09:03:14 | 显示全部楼层
其实, 可以不用$value:
(action_tile "ldc" "(collard)") 等同于 (action_tile "ldc" "(if (= $value \"1\")(collard))")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-21 09:45:53 | 显示全部楼层
最初由 lsjjm 发布
[B]其实, 可以不用$value:
(action_tile "ldc" "(collard)") 等同于 (action_tile "ldc" "(if (= $value \"1\")(collard))") [/B]

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

使用道具 举报

发表于 2004-5-21 10:13:50 | 显示全部楼层
最初由 841594 发布
[B]...对于"toggle"、"radio_button"等控件, 这两句的意思是不同的。[/B]


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

使用道具 举报

发表于 2004-5-21 13:47:04 | 显示全部楼层
最初由 lsjjm 发布
[B]

这个例子就是TOGGLE !
  : toggle { label = "L Coll. R"; key = "ldc";} [/B]


你是把取值判断放在(COLLARD)函数里面了,这里少写一点,就要在(COLLARD)里多写一句,还是要用到$VALUE。
比较两种不同的写法,要在同样的条件下,对应的(COLLARD)函数写法不同,如何能断言两种写法等价呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-21 14:27:53 | 显示全部楼层
最初由 841594 发布
[B]你是把取值判断放在(COLLARD)函数里面了,这里少写一点,就要在(COLLARD)里... [/B]

真是有意思, 难道你看了COLLARD程序? 
(defun collard ()      ;08/04/03
  (if (not (new_dialog "dcollar" index "" '(680 250)))(exit))
  (action_tile
    "accept" "(setq id (atof (get_tile \"id\"))
                    ff (atof (get_tile \"ff\"))
                    ca (angtof (get_tile \"ca\"))
                    cr (atof (get_tile \"cr\")))
              (done_dialog)")   
  (action_tile "cancel" "(exit)")
  (start_dialog)
)

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

使用道具 举报

发表于 2004-5-21 15:34:24 | 显示全部楼层
搂主的问题是用这个toggle来控制textbox的enable状态,所以我作此推测不算过分吧。
老兄把toggle当button用,没人说这样不行。但您8楼这样作答岂不误导别人?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-5-21 17:08:54 | 显示全部楼层
谢谢各位老兄,我的意思是tog1=1的时候text_box可用tog=0的时候text_box不可用
引用(action_tile "tog1" "(mode_tile \"lay1\" (if (= \"0\" $value) 1 0))")问题搞定
不过还想问下在"action_tile"里怎么调用color对话框啊?
好象在(start_dialog)(unload_dialog id)之前是不能用(command),是吗?(我试了,是不能用的)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-5-21 19:13:14 | 显示全部楼层
最初由 aaddff 发布
[B]谢谢各位老兄,我的意思是tog1=1的时候text_box可用tog=0的时候text_box不可用
引用(action_tile "tog1" "(mode_tile \"lay1\" (if (= \"0\" $value) 1 0))")问题搞定
不过还想问下在"action_tile"里怎么调用color... [/B]


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-15 06:29 , Processed in 0.271134 second(s), 59 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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