本帖最后由 作者 于 2008-1-19 22:05:19 编辑
小弟刚学lisp.用的是AutoLisp&DCL基础篇这本书,看到书上这段程序时,调试了好多次都不行。
希望各位高手有时间帮小弟看一下。
- (defun c:dia6b()
- (setvar "cmdecho" 0)
- (setq blkname "dia6att")
- (dcl_dia6b)
- (prin1)
- )
- (defun c:dia6b1()
- (setvar "cmdecho" 0)
- (setq blkname "dia6att")
- (setq dd 99)
- (while (>= dd 1)
- (dcl_dia6b)
- )
- (prin1)
- )
- (defun dcl_dia6b()
- (setq dcl_id (load_dialog "dia6b"))
- (new_dialog "dia6b" dcl_id)
- (setq defkey1 "rb14" defkey2 "rb21")
- (set_tile defkey1 "1")
- (set_tile defkey2 "1")
- (setq name(get_attr defkey1 "label"))
- (setq ssca(get_attr defkey2 "label"))
- (action_tile "rb11" "(setq name(get_attr $key "label"))")
- (action_tile "rb12" "(setq name(get_attr $key "label"))")
- (action_tile "rb13" "(setq name(get_attr $key "label"))")
- (action_tile "rb14" "(setq name(get_attr $key "label"))")
- (action_tile "rb21" "(setq ssca(get_attr $key "label"))")
- (action_tile "rb22" "(setq ssca(get_attr $key "label"))")
- (action_tile "rb23" "(setq ssca(get_attr $key "label"))")
- (action_tile "rb24" "(setq ssca(get_attr $key "label"))")
- (action_tile "rb25" "(setq ssca(get_attr $key "label"))")
- (action_tile "ins_ok" "(ok_dia6b)(done_dialog 1)")
- (setq dd(start_dialog))
- (if (= dd 1)
- (progn
- ;(setq inspt (getpoint "\n选取属性图块的插入点:"))
- ;(command "insert" blkname inspt 1 1 0 dwgnum name ssca)
- ;(command "insert" blkname "x" 1 "y" 1 "r" 0 pause dwgnum name ssca)
- (command "insert" blkname '(0 0) 1 1 0 dwgnum name ssca)
- (command "move" (entlast) "" '(0 0) pause)
- )
- )
- )
- (defun ok_dia6b()
- (setq dwgnum (get_tile "dwgnum"))
- )
以下是对话框DCl:- dia6b:dialog{
- label="轻松掌握 radio_button 单选按钮";
- :text{label="【 插入带有属性的图块 DIA6B 】";
- alignment=centered;
- }
- :row{
- :boxed_radio_column{
- label="设计者";
- :radio_button{label="忍者龟";key="rb11";}
- :radio_button{label="小叮当";key="rb12";}
- :radio_button{label="钟楼怪人";key="rb13";}
- :radio_button{label="无敌铁金刚";key="rb14";value="1";}
- }
- :boxed_radio_column{
- label="比例";
- :radio_button{label="1/1"; key="rb21";value="1";}
- :radio_button{label="1/30"; key="rb22";}
- :radio_button{label="1/50"; key="rb23";}
- :radio_button{label="1/100";key="rb24";}
- :radio_button{label="1/200";key="rb25";}
- }
- }
- :edit_box{
- label="图档编号";
- key="dwgnum";
- edit_width=8;
- edit_limit=8;
- fixed_width=true;
- }
- spacer_1;
- :row{
- fixed_width = true;
- alignment = centered;
- :button{
- label="插入图块";
- key="ins_ok";
- width=8;
- }
- : spacer {width = 2;}
- cancel_button;
- }
- }
[upload=rar]
|