发码养号之创建表格(非ACAD_TABLE)
本帖最后由 夏生生 于 2021-9-1 15:53 编辑收币有风险,下载需谨慎,勿喷
本附件含3个函数
make-line创建直线
make-text创建单行文字
make-table创建表格
以下为示例:
(defun c:tt (/ pt blst h ttz tdqlst tlst dis lst)
(setqpt (getpoint "\n拾取表格插入点:")
blst '(5 10 5 4 4)
h 2
ttz '(1.5 0.75 "standard")
tdqlst '(2 2 2 2 2)
tlst '(("序号" "名称" "重量" "数量" "备注")
("" "" "(kg)" "(个)" "")
)
dis 1
)
(setq lst (make-table blst h ttz tdqlst tlst pt dis))
(entdel (cadar lst))
(setqpt (polar pt (* 0.5 pi) (* -2 h))
tdqlst '(2 1 2 3 2)
tlst '(("1" "花裤衩" "0.350" "100" "没洗")
("2" "花背心" "0.250" "200" "")
("3" "人字拖" "0.800" "10" "缺底")
("4" "假发" "100" "6" "没洗")
)
)
(setq lst (make-table blst h ttz tdqlst tlst pt dis))
(entdel (caar lst))
(foreach n (apply 'append (last lst))
(ifn
(vla-put-color (vlax-ename->vla-object n) 1)
)
)
)
蓝盾设计 发表于 2021-9-17 21:15
谢谢指点,已改好,我增加了表格的图层,现在想设立红色文字的图层,正在研究你的表,如果方便的话请指点! ...
对于范例来讲,从foreach开始就是改相关图元特性的。假设你要改图层,把vla-put-color改为vla-put-layer就行。函数的返回值是(横线图元表 竖线图元表 文字图元表),图元都有了,你想怎么处理怎么处理。 本帖最后由 夏生生 于 2021-9-17 16:04 编辑
蓝盾设计 发表于 2021-9-17 14:23
群主:我想增加列怎么添加,原有5列,我想增加到八列
blst和tdqlst按需求填入,如(setq blst'(5 5 5 5 5 5 5 5)tdqlst'(2 1 1 1 1 1 1 1)) LPACMQ 发表于 2021-9-19 18:00
直接用TABLE,岂不是更香
Table 修改没有动态块来的方便,文字组成属性块后,配合复制递增,效率高 看起来不错 就是没B了 :'( 群主:我想增加列怎么添加,原有5列,我想增加到八列 谢谢指点,已改好,我增加了表格的图层,现在想设立红色文字的图层,正在研究你的表,如果方便的话请指点!谢谢!
用动态块做表格,属性块做文字,修改更方便 谢谢:这几天没有时间弄,稍微晚几天再来研究!我也是刚学这个,很多不熟悉! alexmai 发表于 2021-9-17 22:31
用动态块做表格,属性块做文字,修改更方便
直接用TABLE,岂不是更香
页:
[1]
2