试试这个程序,让我知道。
注意:在选择文本结束时,只需按enter键并键入(n)或(no)即可显示最后一个进程的对话框。
(defun c:Test(/ *error* _dialog dlg s name s l k save path o)
;;; Tharwat 13.01.2015 ;;
(defun *error*(msg)
(if (and dlg (findfile dlg))
(vl-file-delete dlg)
)
(if (not (wcmatch (strcase msg) "*BREAK*,*CANCEL*,*EXIT*"))
(princ (strcat "\n** Error: " msg " **"))
)
(princ)
)
(defun _dialog(/ id f)
(cond
((not
(and
(setq dlg (vl-filename-mktemp nil nil ".dcl"))
(setq f (open dlg "w"))
(write-line
"test : dialog {label = \"Test Strings\"; width = 40;
: text { key = \"path\"; }
spacer_1 ;
: list_box { key = \"lst\"; height = 18;}
: boxed_row {
: button { label = \"Okay\"; key = \"oki\"; width = 12;}
: button { label = \"Exit\"; key = \"esc\"; is_default = true; is_cancel = true; width = 12;}
: button { label = \"Save to\"; key = \"sv\"; width = 12;}
}}"
f
)
(not (close f))
)
)
(alert "Can't load the temporary file <!>")
)
((or (not dlg)
(not (> (setq id (load_dialog dlg)) 0))
(not (new_dialog
"test"
id
)
)
)
(princ "\n Can not load Dialog !")
)
(t
(start_list "lst")
(mapcar 'add_list (reverse l))
(end_list)
(mode_tile "oki" 1)
(set_tile "lst" "0")
(action_tile
"sv"
"(if (setq path (getfiled \"Save to\" (getvar 'DWGPREFIX) \"csv\" 1))
(progn
(set_tile \"path\" path)
(mode_tile \"oki\" 0))
(mode_tile \"oki\" 1))"
)
(action_tile
"oki"
"(setq save t)(done_dialog)"
)
(action_tile "esc" "(setq save nil)(done_dialog)")
(start_dialog)
(unload_dialog id)
(vl-file-delete dlg)
)
)
save
)
(while
(cond
((and (setq s (car (entsel "\n Pick Texts :")))
(wcmatch (cdr (assoc 0 (entget s))) "TEXT,MTEXT")
)
(setq l (cons (cdr (assoc 1 (entget s))) l))
)
((or s (not s))
(princ "\nInvalid Selection !! Select text ONLY ")
(initget 6 "Yes No")
(or (not (setq k
(getkword "\n Missed !! Continue <Yes> :")))
(eq k "Yes")
)
)
)
)
(if (and l (setq save (_dialog)) (setq o (open path "w")))
(progn
(mapcar '(lambda (x) (write-line x o)) (reverse l))
(close o)
(princ "\n Well done ...")
)
(princ "\n Exit by User ")
)
(princ)
)
WoowWWW。。。呵呵呵呵。。。谢谢Tharwat!。。。它的效果和我需要的一样好!!!。。。
我对电子表格的独特“延迟”(按使用次数),我想如果有办法只填写一个电子表格(我不知道),或者使用Ram内存复制这些文本,将其粘贴到Excel文件打开的单元格中。。。有可能吗?。。。
我很高兴你喜欢这个节目
我不认为我明白你的意思 很抱歉
让我试着解释一下!。。。
每次我使用它,我都会创建一个电子表格(没关系,没问题,这对我为什么需要在Excel上重写路径有很大帮助!)。
它将用于跟踪图纸上的电缆,想想在一个电气装置中,我有一个点(原点)和电缆的目标(现场仪器),所以,我必须按照路径文本(电气管道或电缆桥架的地址)来选择电缆通过的位置,有很多电缆要逐个进行,明白吗?。。。
页:
1
[2]