AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

Join the forum, it's quick and easy

AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~
AutoCAD顧問
Would you like to react to this message? Create an account in a few clicks or log in to continue.
[已解決]關於dcl的變數記憶問題 Aoe1-113[已解決]關於dcl的變數記憶問題 Ioaoe110[已解決]關於dcl的變數記憶問題 2020-310[已解決]關於dcl的變數記憶問題 Oiu15010[已解決]關於dcl的變數記憶問題 2020-211[已解決]關於dcl的變數記憶問題 Ia15010[已解決]關於dcl的變數記憶問題 Aizyao10[已解決]關於dcl的變數記憶問題 Uos15010[已解決]關於dcl的變數記憶問題 BPl3tjj[已解決]關於dcl的變數記憶問題 Ziao1510
[已解決]關於dcl的變數記憶問題 Aoe15010[已解決]關於dcl的變數記憶問題 Oo-2-110[已解決]關於dcl的變數記憶問題 Zuoiy_10[已解決]關於dcl的變數記憶問題 Aizyao11[已解決]關於dcl的變數記憶問題 Iyb_1510[已解決]關於dcl的變數記憶問題 Aoe1-112[已解決]關於dcl的變數記憶問題 Uos15011[已解決]關於dcl的變數記憶問題 Aoe2da10[已解決]關於dcl的變數記憶問題 Aoe2da11[已解決]關於dcl的變數記憶問題 Aoe10

[已解決]關於dcl的變數記憶問題

2 posters

向下

[已解決]關於dcl的變數記憶問題 Empty [已解決]關於dcl的變數記憶問題

發表 由 djh1006 2014-10-06, 19:23

請問各位高手
以下是我的dcl的程式,
檔名aaa.dcl
代碼:
aaa : dialog {
   label = "測試dcl";
   :column{
     :edit_box {label = "逃角半徑";key = "keb11";edit_width=6;value=2;}
     :edit_box {label = "逃示量";key = "keb12";edit_width=6;value=0.1;}
     :edit_box {label = "倒R量";key = "keb13";edit_width=6;value=2;}
  }
   spacer_1;
   ok_cancel;
}

以下是配合的lisp程式,
aaa.lsp
代碼:
;aaa.lsp
;測試dcl

(defun c:aaa()

  (setq dcl_id (load_dialog "aaa"))
  (new_dialog "aaa" dcl_id)
  (mode_tile "keb11" 2)
  (action_tile "keb11" "(setq R1 (atof $value))")
  (action_tile "keb12" "(setq FR1 (atof $value))")
  (action_tile "keb13" "(setq COL1 (atof $value))")
  (action_tile "accept" "(done_dialog 1)")   ;; 按 "確定"
  (setq sd (start_dialog))

  (princ (strcat "逃角半徑:" (rtos R1)))
  (princ (strcat "逃示量:" (rtos FR1)))
  (princ (strcat "倒R量:" (rtos COL1)))
  (princ)
)

[已解決]關於dcl的變數記憶問題 Ingyns
我的問題是,當中的R1、FR1、COL1三個變數在執行一次且數字有更改時,當下次再執行此程式,三個有更改的數字如何顯示在DCL對話方塊中
例如:原始數字
R1=2
FR1=0.1
COL1=2

當我修改成
R1=4
FR1=0.5
COL1=3

如何把最後的這三組數字變成下次執行DCL的預設值,而不是2,0.1,2?是從dcl下手還是從lsp下手呢?


djh1006 在 2014-10-10, 08:09 作了第 1 次修改

____________________________________________________________________________________
微笑
djh1006
djh1006
中級會員
中級會員

文章總數 : 177
年齡 : 53
來自 : 彰化縣員林鎮中山路二段369巷二弄15-14號
職業 : 連續沖壓模具設計工程師
愛好 : UG,SOLIDWORKS,AUTOCAD 2D,autolisp
個性 : 內向偏外
使用年資 : 23年以上
使用版本 : 2014
積分 : 7
經驗值 : 6136
威望值 : 359
注冊日期 : 2011-06-16
男 獅子座 豬

回頂端 向下

[已解決]關於dcl的變數記憶問題 Empty 回復: [已解決]關於dcl的變數記憶問題

發表 由 djh1006 2014-10-09, 19:41

終於找到答案了
aaa.dcl
代碼:
aaa : dialog {
   label = "測試dcl";
   :column{
     :edit_box {label = "逃角半徑";key = "keb11";edit_width=6;}
     :edit_box {label = "逃示量";key = "keb12";edit_width=6;}
     :edit_box {label = "倒R量";key = "keb13";edit_width=6;}
  }
   spacer_1;
   ok_cancel;
}
aaa.lsp
代碼:
;aaa.lsp
;測試dcl

(defun c:aaa()

  (setq dcl_id (load_dialog "aaa"))
  (new_dialog "aaa" dcl_id)

  (if (/= R1_r nil)     (set_tile "keb11" R1_r)     (set_tile "keb11" "2"))
  (if (/= COL1_r nil)(set_tile "keb12" COL1_r)(set_tile "keb12" "0.1"))
  (if (/= FR1_r nil)   (set_tile "keb13" FR1_r)   (set_tile "keb13" "2"))

  (action_tile "keb11" "(setq R1 (atof $value))")
  (action_tile "keb12" "(setq COL1 (atof $value))")
  (action_tile "keb13" "(setq FR1 (atof $value))")
  (action_tile "accept" "(done_dialog 1)")   ;; 按 "確定"
  (setq sd (start_dialog))

  (if (= R1 nil)(setq R1 2))
  (if (= COL1 nil)(setq COL1 0.1))
  (if (= FR1 nil)(setq FR1 2))

  (setq
    R1_r (rtos R1)
    COL1_r (rtos COL1)
    FR1_r (rtos FR1)
  )

  (princ (strcat "逃角半徑:" (rtos R1)))
  (princ (strcat "逃示量:" (rtos FR1)))
  (princ (strcat "倒R量:" (rtos COL1)))
  (princ)
)
其中關鍵在於
(if (/= R1_r nil)     (set_tile "keb11" R1_r)     (set_tile "keb11" "2"))
(if (/= COL1_r nil)(set_tile "keb12" COL1_r)(set_tile "keb12" "0.1"))
(if (/= FR1_r nil)   (set_tile "keb13" FR1_r)   (set_tile "keb13" "2"))

此值會反應到對話方塊裡

https://www.youtube.com/watch?v=3ytIKXN3rac&feature=youtu.be

____________________________________________________________________________________
微笑
djh1006
djh1006
中級會員
中級會員

文章總數 : 177
年齡 : 53
來自 : 彰化縣員林鎮中山路二段369巷二弄15-14號
職業 : 連續沖壓模具設計工程師
愛好 : UG,SOLIDWORKS,AUTOCAD 2D,autolisp
個性 : 內向偏外
使用年資 : 23年以上
使用版本 : 2014
積分 : 7
經驗值 : 6136
威望值 : 359
注冊日期 : 2011-06-16
男 獅子座 豬

回頂端 向下

[已解決]關於dcl的變數記憶問題 Empty 回復: [已解決]關於dcl的變數記憶問題

發表 由 Tiger&蘋果爸 2014-10-10, 20:52

很高興您的問題自行找到解答~
也謝謝你的解說喔!
害羞

____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
編輯個人資料 Sesa2011 編輯個人資料 Youtub11 編輯個人資料 Oiea2011 編輯個人資料 Oe20011 編輯個人資料 Fbi20011 編輯個人資料 Line2011
Tiger&蘋果爸
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 21382
年齡 : 48
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照/吸貓
個性 : 幽默/樂觀/善良
使用年資 : 20↑
使用版本 : AutoCAD 2022
經驗值 : 90360
威望值 : 17197
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回頂端


 
這個論壇的權限:
無法 在這個版面回復文章
[已解決]關於dcl的變數記憶問題 Aoe1-113[已解決]關於dcl的變數記憶問題 Ioaoe110[已解決]關於dcl的變數記憶問題 2020-310[已解決]關於dcl的變數記憶問題 Oiu15010[已解決]關於dcl的變數記憶問題 2020-211[已解決]關於dcl的變數記憶問題 Ia15010[已解決]關於dcl的變數記憶問題 Aizyao10[已解決]關於dcl的變數記憶問題 Uos15010[已解決]關於dcl的變數記憶問題 BPl3tjj[已解決]關於dcl的變數記憶問題 Ziao1510
[已解決]關於dcl的變數記憶問題 Aoe15010[已解決]關於dcl的變數記憶問題 Oo-2-110[已解決]關於dcl的變數記憶問題 Zuoiy_10[已解決]關於dcl的變數記憶問題 Aizyao11[已解決]關於dcl的變數記憶問題 Iyb_1510[已解決]關於dcl的變數記憶問題 Aoe1-112[已解決]關於dcl的變數記憶問題 Uos15011[已解決]關於dcl的變數記憶問題 Aoe2da10[已解決]關於dcl的變數記憶問題 Aoe2da11[已解決]關於dcl的變數記憶問題 Aoe10