找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2297|回复: 12

[原创]:DCL对话框简化编程

[复制链接]
发表于 2008-2-2 11:30:55 | 显示全部楼层 |阅读模式

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

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

×
在程序中对于对话框是很麻烦的事情.
如果全部用LISP来写对话框就方便了.
以下就是个例子.

每一行就是一个控件
(list 变量名 提示语 变量类型)
例1:
(list "is_wpj" "wpj*.dwg" "bool")
例2:
(list "other-scale" "放大倍数" "int")


当变量名为nil 时表示一个对话框控制字符(这个要了解相关语法 )
例1: 注,下面的要成对出现,而且然后把其他的东西(编辑框等)放在里面
(list nil "" ": boxed_row{");;横向排列各控件
(list "is_wpj" "wpj*.dwg" "bool").......
(list nil nil "}")

例2:
(list nil "" ": boxed_column{");;竖向排列各控件
(list "is_wpj" "wpj*.dwg" "bool").......
(list nil nil "}")

  1.   [FONT=courier new]
  2. 例子1:

  3. (setq initlist
  4.        (list
  5.          (list nil "" ": boxed_row{")
  6.          (list "filedir" "工程路径" "str")
  7.          (list nil ">" "button" "(select-dir)")
  8.          (list nil nil "}")
  9.          (list "is_for_plt" "生成用于配筋计算书(否则为打印用计算书)" "bool")
  10.          
  11.          (list nil "" ": boxed_column{")
  12.          ;(list nil "" ": boxed_row{")
  13.          (list "is_wpj" "wpj*.dwg" "bool")
  14.          (list "block_pre_name" "块名加前缀" "str")
  15.          (list "is_on_one_point" "是否插入同一点" "bool")
  16.          ;(list nil nil "}")
  17.          (list "floor-str" "层号范围(空格分开,全部留空)" "str")
  18.           (list nil nil "}")
  19.          (list "is_bpj" "*板计算结果*.dwg" "bool")
  20.          (list "is_flr" "FLR*.dwg" "bool")
  21.          (list "is_load" "第??层梁、墙柱节点输入及楼面荷载平面图.DWG" "bool")
  22.          (list "is_jccad" "*wdcnl*.dwg" "bool")
  23.          (list nil "" ": boxed_column{")
  24.          (list "is_other" "插入其他DWG文件" "bool")
  25.          (list "other-str" "通配符" "str")
  26.          (list "other-scale" "放大倍数" "int")
  27.          (list nil nil "}")
  28.          )
  29.        )
  30.       
  31. (init initlist)



  32. ;;例子2
  33. (defun c:tt()
  34.   (setq INITLIST (list
  35.                    (list "is_save_windows_rt" "rt时是否保存窗口" "bool")
  36.                    (list "change_color_rt" "rt时改变颜色" "bool")
  37.                    (list "is_princ_tip_rt" "是否打开提示" "bool")
  38.                    (list "replacs_char" "输入替代字符" "str")
  39.            ))
  40.   (init initlist "dlg")
  41.   )
  42.   [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
 楼主| 发表于 2008-2-2 11:46:42 | 显示全部楼层
如果万一上面少了什么函数(基本的函数都给出源码了)
就加载以下库文件.试一下效果.
因为没仔细测试,
如果少了什么函数.跟帖说明一下.

点评

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

已领礼包: 208个

财富等级: 日进斗金

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

使用道具 举报

 楼主| 发表于 2008-2-3 09:03:42 | 显示全部楼层
不要用到对话框函数了.
直接用上面的方法就可以设置变量了.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6个

财富等级: 恭喜发财

发表于 2008-2-4 13:43:17 | 显示全部楼层
见偶的lisdcl系列工具~
从做DCL界面
到初始化对话框值
以及动态DCL界面
返回调用结果
都有相对完整的解决方案啦~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2009-5-5 20:04:17 | 显示全部楼层
?? 我基础太差 没看懂说明  能举例说明下吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 22个

财富等级: 恭喜发财

发表于 2014-1-3 06:41:25 | 显示全部楼层
wujimmy 发表于 2008-2-2 11:46
如果万一上面少了什么函数(基本的函数都给出源码了)
就加载以下库文件.试一下效果.
因为没仔细测试,

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

使用道具 举报

已领礼包: 2226个

财富等级: 金玉满堂

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

使用道具 举报

已领礼包: 2226个

财富等级: 金玉满堂

发表于 2014-3-2 20:57:51 | 显示全部楼层
好东西。只是没用源码!{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-23 16:21 , Processed in 0.391296 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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