下面是一个示例dcl,它有一些额外的智能。可以更改标题。它以字符串形式返回变量项,加载getval。lsp感谢Alanjt的原创概念。
- ;; Input Dialog box with variable title
- ;; By BIGAL June 2012
- ;; code (ah:getval title)
- (defun AH:Getval (title / fo)
- (setq fname "C://getval.dcl")
- (setq fo (open fname "w"))
- (write-line "ddgetval : dialog {" fo)
- (write-line " : row {" fo)
- (write-line ": edit_box {" fo)
- (write-line (strcat " key = " (chr 34) "sizze" (chr 34) ";") fo)
- (write-line (strcat " label = " (chr 34) title (chr 34) ";" ) fo)
- (write-line " edit_width = 18;" fo)
- (write-line " edit_limit = 15;" fo)
- (write-line " is_enabled = true;" fo)
- (write-line " }" fo)
- (write-line " }" fo)
- (write-line "ok_cancel;}" fo)
- (close fo)
- (setq dcl_id (load_dialog "c:\\getval"))
- (if (not (new_dialog "ddgetval" dcl_id))
- (exit))
- (action_tile "sizze" "(setq item $value)(done_dialog)")
- (mode_tile "sizze" 3)
- (start_dialog)
- ; returns the value of item
- )
现在做这个Lisp程序
- (setq title "Please enter something here")
- (ah:getval title)
- (Princ item)
|