davide888 发表于 2012-12-6 11:32:21

帮忙解决如何读取文本框内的数值(希望文本框的数值为上次输入的数值)

本帖最后由 davide888 于 2012-12-6 14:41 编辑

感谢Gu_xl 给我的帮助      修改可以正常运行的结果   初学者的理解   给需要了解基础结构的一起交流
fhy : dialog {
    label="快速偏移";
      :edit_box {
            key      = "ll" ;
            label      = "偏移量:" ;
            value      = "" ;
            width      = 32.6 ;
            height   =1.0 ;
            edit_width =7.1 ;
            alignment   = top ;
      }
ok_cancel;
}


(defun c:fhy( / dcl_id)
   (if (setq dcl_id (load_dialog "fhy.dcl"))
       (if (new_dialog "fhy" dcl_id)
         (progn
             (if l1
            (set_tile "ll" (rtos l1 2 0)) ;2为10进制0为小数点后面位数
            ;(set_tile "ll" (rtos (setq l1 100)))
               ) ;读取上次数值
            (action_tile "accept" "(done_dialog 1)") ;确认键执行
            (action_tile "cancel" "(done_dialog 0)") ;取消键执行
            (ACTION_TILE "ll" "(setq l1 (atof $value))") ;读取数值
            (setq re (start_dialog)) ;定义按钮
            (unload_dialog dcl_id)
            )
      )
    )
    (if (= re 1) (progn   
       (command "OFFSET" "l" "c" l1)
      )
    )    ;情况执行
    (princ)
)


http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 davide888的微博

Gu_xl 发表于 2012-12-6 11:54:32

本帖最后由 Gu_xl 于 2012-12-6 11:58 编辑


(defun c:fhy( / dcl_id)
   (if (setq dcl_id (load_dialog "fhy.dcl"))
       (if (new_dialog "fhy" dcl_id)
         (progn
             (if l1
            (set_tile "ll" (rtos l1 2 0))
            (set_tile "ll" (rtos (setq l1 100)))
               )
            (action_tile "accept" "(done_dialog 1)")
            (action_tile "cancel" "(done_dialog 0)")
            (ACTION_TILE "ll" "(setq l1 (atof $value))")
            (setq re (start_dialog))
            (unload_dialog dcl_id)
            )
      )
    )
    (if (= re 1) (progn
      (setq aa l1)
      (command "OFFSET" "l" "c" "aa") ;_ 这是什么命令???完全错误的语句!!!
      )
    )
    (princ)
)

davide888 发表于 2012-12-6 12:09:26

Gu_xl 发表于 2012-12-6 11:54 static/image/common/back.gif


偏移想要偏移值为DCL文本框的(希望文本框的数值为上次输入的数值)

davide888 发表于 2012-12-6 12:20:05

神呐救救我们吧

Gu_xl 发表于 2012-12-6 13:01:08

davide888 发表于 2012-12-6 12:20 static/image/common/back.gif
神呐救救我们吧

(command "OFFSET" "l" "c" "aa")
==>
(command "offset" l1)
(while (= 1 (getvar 'cmdactive)) (command pause))

davide888 发表于 2012-12-6 13:33:43

Gu_xl 发表于 2012-12-6 13:01 static/image/common/back.gif
(command "OFFSET" "l" "c" "aa")
==>
(command "offset" l1)


不知道为什么,反正好用了   学习了    非常感谢      希望文本框的100为上次输入的值   该怎么弄?

davide888 发表于 2012-12-6 13:58:52

Gu_xl 发表于 2012-12-6 11:54 static/image/common/back.gif


感谢CCTV感谢Gu_xl 给我的帮助   原来你帮我解决了。
页: [1]
查看完整版本: 帮忙解决如何读取文本框内的数值(希望文本框的数值为上次输入的数值)