找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 694|回复: 2

[LISP程序]:谁能把这个以DCL

[复制链接]
发表于 2006-11-24 23:56:11 | 显示全部楼层 |阅读模式

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

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

×
;;;以下LISP中的数,我想以对话框的形式输入:数A ,B, C,

;;;高手能做一个给小弟试试,(觉得简单的话就帮小弟一下)

(defun c:err ()
(setq AA (getreal"\n数A"))
(setq BB (getreal"\n数B"))
(setq CC (getreal"\n数C"))
(setq DD (+(* AA BB) CC ))
(print (strcat "="(rtos DD 2 5)))
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-11-25 00:46:26 | 显示全部楼层
[php]
(defun C:err ()
  ;;;定义计算函数
  (defun jisuan        ()
    (setq aa1 (atof aaa)
          bb1 (atof bbb)
          cc1 (atof ccc)
    )
    (setq dd1 (rtos (+ (* AA1 BB1) CC1) 2 5))
    (set_tile "dd" dd1)
  )
  ;;;加载对话框
  (setq dia_id (load_dialog "aa"))
  (if (not (new_dialog "AA" dia_id))
    (exit)
  )
  ;;;定义动作
  (action_tile "aa" "(SETQ aaa $VALUE))")
  (action_tile "bb" "(SETQ bbb $VALUE)")
  (action_tile "cc" "(SETQ ccc $VALUE))")
  (action_tile "denyu" "(jisuan)")
  (action_tile "accept" "(done_dialog 1)")
  (start_dialog);显示对话框
  
  (atof dd1);;用来返回计算结果,可用于长度的输入
)
[/php]
或者:
[php]
(defun C:err ()
  ;;;定义计算函数
  (defun jisuan        ()
    (setq aa1 (atof (get_tile "aa"))
          bb1 (atof (get_tile "bb"))
          cc1 (atof (get_tile "cc"))
          )             
    (setq dd1 (rtos (+ (* AA1 BB1) CC1) 2 5))
    (set_tile "dd" dd1)
  )
  ;;;加载对话框
  (setq dia_id (load_dialog "aa"))
  (if (not (new_dialog "AA" dia_id))
    (exit)
  )
  ;;;定义动作  
  (action_tile "denyu" "(jisuan)")
  (action_tile "accept" "(done_dialog 1)")
  (start_dialog);显示对话框
  
  (atof dd1);;用来返回计算结果,可用于长度的输入
)
[/php]
对话框,请保存为AA.dcl
[php]
AA: dialog {
label = "计算";
    :column {
: edit_box {
   key = "aa";
   label = "数AA";
   }
: edit_box {
   key = "bb";
   label = "数BB";
   }
: edit_box {
   key = "cc";
   label = "数CC";
   }
   : edit_box {
   key = "dd";
   label = "等于";
   }}
   : button {
         key = "denyu" ;
         label = "等于" ;
      }
         ok_only;
}
[/php]

命令:err

实际应用如:

命令: l LINE 指定第一点:
指定下一点或 [放弃(U)]: (c:err)
464.0

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-29 19:26 , Processed in 0.353674 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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