明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2104|回复: 4

请大家把这个程序完成

[复制链接]
发表于 2004-2-21 11:24 | 显示全部楼层 |阅读模式
设(setq a '(1 2 3 4 5))


DCL第一行为单选框+和-


第二行为编辑框,目的是让当切换+和-的时候分别把表A中的数据进行加减,并把结果显示在编辑框内,且切换加减的时候显示结果要跟随变化
发表于 2004-2-21 12:40 | 显示全部楼层
这样只能变化一次,加或减一次后,编辑框内的内容是上次的结果,这个结果就无法再加或减了。


设(setq a '(1 2 3 4 5)) 干什么用?


编辑框内的数字写成什么格式?
 楼主| 发表于 2004-2-21 15:13 | 显示全部楼层
我的意思是如果选+ 相当于(apply '+ a)求出结果显示在编辑框内,现在我又选-


结果就编程(apply '- a)编辑框内的值也随之变化为表中内容的减法运算,也就是说可以在对话框内随着选择的不同结果也跟着变化,不知道能不能实现
发表于 2004-2-21 16:17 | 显示全部楼层
(defun LoadDlg( / path fname f dcl_id)
(setq path (getenv "temp"))
(setq fname (strcat path "\\" "wl-definde-dcl-file.dcl"))
(setq f (open fname "w"))
(write-line "add:dialog{label = \"对话框\"; :row{ :button {label = \"+\"; key = \"add\";}" f)
(write-line " :button {label = \"-\"; key = \"sub\";}}" f)
(write-line " :edit_box{label = \"结果为:\"; key = \"edit1\";} ok_cancel;}" f)
(close f)
(setq dcl_id (load_dialog fname))
(vl-file-delete fname)
dcl_id
) (defun c:test( / a dcl_id)
(setq a '(1 2 3 4 5))
(setq dcl_id (loaddlg))
(new_dialog "add" dcl_id)
(action_tile "add" "(set_tile \"edit1\" (rtos (apply '+ a)))")
(action_tile "sub" "(set_tile \"edit1\" (rtos (apply '- a)))")
(start_dialog)
(unload_dialog dcl_id)
(princ)
)
 楼主| 发表于 2004-2-21 16:51 | 显示全部楼层
送个鲜花以示感谢:)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-17 23:20 , Processed in 0.176790 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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