乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 92|回复: 6

请教各位同仁

[复制链接]

38

主题

123

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
275
发表于 2004-5-14 19:47:00 | 显示全部楼层 |阅读模式
我刚学习lisp编程,遇到一个问题,不知道怎么解决。请知道的麻烦解决一下。
我的问题是:我编写一个dcl对话框,内容如下:       
bzfl593:dialog{
label="标准法兰绘制(HG20595-97)";
:boxed_row{
label="参数选择";
:popup_list{label="设计压力";key="pp";edit_width=8;}
:popup_list{label="公称直径";key="dd";edit_width=8;}
}
spacer_1;
ok_cancel;
}
在主程序里有3个列表List1("1"        "2")        list2("0.1"        "0.2"        "0.3")        list3("0.1"        "0.2")
我想问.在lisp里面如何获取Popup_list的数值并赋值。同时还想当pp显示1的时候直径框显示List2        当pp为2的时候,直径显示list3.
因为在网吧上网,没办法发程序,希望大家能看懂!
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-5-14 19:58:00 | 显示全部楼层
popup_list 返回的是索引值,你根据索引值到列表中取得实际值
在pp的动作函数里按照选择给dd填入相应的内容
回复

使用道具 举报

38

主题

123

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
275
发表于 2004-5-14 20:22:00 | 显示全部楼层
不好意思斑竹。我明白是明白了。我也差不多这么做的,但是就是连接不上,因为办公室机子不能上论坛,我就没办法发程序,假若有这方面的例题还请发个上来,我看一下。
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-5-14 20:45:00 | 显示全部楼层
这个程序不复杂,你现写一个都可以啊
回复

使用道具 举报

38

主题

123

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
275
发表于 2004-5-14 21:09:00 | 显示全部楼层
呵呵,斑竹太高估我了。我编程是初学阶段,学习dcl纯粹是还不会走就跑了。呵呵。我编程大部分就是在凑程序,东摘西凑。因此记不住很多。
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-5-14 21:31:00 | 显示全部楼层
  1. (defun act_pp(val)
  2.    (start_list "dd")
  3.    (cond
  4.        ((= val "0") (mapcar 'add_list list2))
  5.        ((= val "1") (mapcar 'add_list list3))
  6.    )
  7.    (end_list)
  8. )
  9. (defun c:test( / dcl_id list1 list2 list3)
  10.    (setq list1 '("1" "2"))
  11.    (setq list2 '("0.1" "0.2" "0.3"))
  12.    (setq list3 '("0.1" "0.2"))
  13.    (setq dcl_id (load_dialog "tmp"))
  14.    (new_dialog "bzfl593" dcl_id)
  15.    (start_list "pp") (mapcar 'add_list list1) (end_list)
  16.    (start_list "dd") (mapcar 'add_list list2) (end_list)
  17.    (action_tile "pp" "(act_pp $value)")
  18.    (start_dialog)
  19.    (unload_dialog dcl_id)
  20.    (princ)
  21. )
回复

使用道具 举报

38

主题

123

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
275
发表于 2004-5-15 21:22:00 | 显示全部楼层
谢谢斑竹。非常感谢!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-8-16 22:22 , Processed in 1.964942 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表