54256 发表于 2018-11-20 18:21:51

修改属性块内某属性宽度因子

请教一下,怎样修改属性块内某属性的宽度因子,
不是编辑块,仅仅是修改当前块的属性,
双击这个属性,调到文字属性里面可以改的,
仅对当前块有效,
这个用lisp该怎么写呢

ly8zx2109 发表于 2018-11-21 10:04:24

;;;------修改属性块的属性值------
;;;(ZP:setatts obj lst)
;;;参数:obj---VLA的obj
;;;参数:lst---为属性标签与其值组成的列表 如(ZP:setatts dlObj (list (cons "属性块的标记值中字符串"    需要附值的值) (cons "属性块的标记值中字符串"    需要附值的值)))
;;;返回值:nil
(defun ZP:setatts1 (obj lst / att att_val);;;属性文字宽度比例
(mapcar
    '(lambda (att)
       (if (setq att_val (cdr (assoc (vla-get-TagString att) lst)))
       (vla-put-ScaleFactor att att_val)
       )
   )
    (vlax-invoke obj "GetAttributes")
)
(vla-update obj)
)
;;;结束

zhangcan0515 发表于 2020-8-13 13:20:03

最近这个功能有没有进展了?

zhangcan0515 发表于 2020-8-13 13:47:06

本帖最后由 zhangcan0515 于 2020-10-5 13:18 编辑

ly8zx2109 发表于 2018-11-21 10:04
;;;------修改属性块的属性值------
;;;(ZP:setatts obj lst)
;;;参数:obj---VLA的obj

已经解决了,谢谢老师给提示
页: [1]
查看完整版本: 修改属性块内某属性宽度因子