Các lỗi thường gặp trong lập trình Lisp trong AutoLisp Đã đăng Tháng 9 7, 2020 · Trả lời báo cáo 33 phút trước, huunhantvxdts đã nói: Sửa lại cho bạn load vào hết lỗi nhé: (defun c:ttt (/ LM:al-effectivename LM:getdynprops blk blk_name ent i lst_blk pt row ss tblobj x y htxt) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun LM:al-effectivename (ent / blk rep) (if (wcmatch (setq blk (cdr (assoc 2 (entget ent)))) "`**") (if (and (setq rep (cdadr (assoc -3 (entget (cdr (assoc 330 (entget (tblobjname "block" blk)))) '("AcDbBlockRepBTag"))))) (setq rep (handent (cdr (assoc 1005 rep))))) (setq blk (cdr (assoc 2 (entget rep)))))) blk ) ;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun LM:getdynprops (blk) (mapcar '(lambda (x) (cons (vla-get-propertyname x) (vlax-get x 'value))) (vlax-invoke blk 'getdynamicblockproperties)) ) (vl-load-com) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (or (> (setq htxt (getvar 'TEXTSIZE)) 0) (setq htxt (setvar 'TEXTSIZE 250))) (if (setq ss (ssget (list (cons 0 "INSERT")))) (progn (setq i -1) (while (setq ent (ssname ss (setq i (1+ i)))) (setq blk (vlax-ename->vla-object ent)) (setq blk_name (if (= "*" (substr (cdr (assoc 2 (entget ent))) 1 1)) (strcat (LM:al-effectivename ent) ": " (cdar (LM:getdynprops blk))) (LM:al-effectivename ent) )) (if (not (assoc blk_name lst_blk)) (setq lst_blk (cons (cons blk_name 1) lst_blk)) (setq lst_blk (subst (cons blk_name (1+ (cdr (assoc blk_name lst_blk)))) (assoc blk_name lst_blk) lst_blk))) ) (setq lst_blk (vl-sort lst_blk '(lambda (x y) (< (car x) (car y))))) (setq pt (getpoint "\nSpecify insertion point: ") TblObj (vla-addtable (vla-get-modelspace (vla-get-ActiveDocument (vlax-get-Acad-Object))) (vlax-3d-point pt) (+ (length lst_blk) 2) 4 (* 1.5 htxt) (* 6 htxt))) (vla-SetColumnWidth TblObj 0 (* 4 htxt)) (vla-SetColumnWidth TblObj 1 (* 12 htxt)) (vla-put-vertcellmargin TblObj (* 0.2 htxt)) (mapcar '(lambda (x y) (vla-setTextHeight TblObj x y)) (list acTitleRow acHeaderRow acDataRow) (list htxt htxt (* 0.75 htxt))) (mapcar '(lambda (x) (vla-setAlignment TblObj x 8)) (list acTitleRow acHeaderRow acDataRow)) (vla-MergeCells TblObj 0 0 0 2) (vla-setText TblObj 0 0 "Bang thong ke khoi luong") (vla-setText TblObj 1 0 "STT") (vla-setText TblObj 1 1 "Ten") (vla-setText TblObj 1 2 "Don vi") (vla-setText TblObj 1 3 "So luong") (setq row 2 i 1) (foreach pt lst_blk (vla-setText TblObj row 0 (itoa i)) (vla-setText TblObj row 1 (car pt)) (vla-setText TblObj row 2 "cai") (vla-setText TblObj row 3 (itoa (cdr pt))) (setq row (1+ row) i (1+ i)))) (vlax-release-object TblObj)) (princ)) Mình load đc rồi, cảm ơn bạn
Các lỗi thường gặp trong lập trình Lisp trong AutoLisp Đã đăng Tháng 9 7, 2020 · Trả lời báo cáo Em có tải lisp này về nhưng khi load thì bị lỗi ; error: syntax error. Mọi người giúp em fix lỗi này với ạ Em xin cảm ơn!! TT-thong ke block.lsp
Các lỗi thường gặp trong lập trình Lisp
trong AutoLisp
Đã đăng · Trả lời báo cáo
Mình load đc rồi, cảm ơn bạn