属性定义标签、提示、默认值修改
本帖最后由 Lispboy 于 2018-10-6 16:26 编辑(defun c:xdtb_attedit (/ result
xd-odcl-att-def-edit-data blkname
tf #tag #prompt
#default atts attename
doContinue result attdefs tags
)
(setq xd-odcl-att-def-edit-data
'("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"
)
)
(defun c:xd-att-def-edit-form#OnInitialize (/)
(dcl-Control-SetList xd-att-def-edit-combox-block atts)
(dcl-Control-SetEnabled xd-att-def-edit-button-ok nil)
(if blkname
(progn (dcl-Control-SetText xd-att-def-edit-combox-block blkname)
(c:xd-att-def-edit-combox-block#OnSelChanged
(vl-position blkname atts)
blkname
)
(setq blkname nil)
)
(progn (dcl-Control-SetEnabled
xd-att-def-edit-combox-tag-caption
nil
)
(dcl-Control-SetEnabled xd-att-def-edit-combox-tag nil)
)
)
(_visible-1 nil)
)
(defun _visible-1 (tf)
(dcl-Control-SetEnabled xd-att-def-edit-button-ok tf)
(dcl-Control-setenabled
xd-att-def-edit-combox-tag-rename-caption
tf
)
(dcl-Control-setenabled
xd-att-def-edit-combox-tag-rename
tf
)
(dcl-Control-setenabled
xd-att-def-edit-combox-prompt-rename-caption
tf
)
(dcl-Control-SetEnabled
xd-att-def-edit-combox-prompt-rename
tf
)
(dcl-Control-setenabled
xd-att-def-edit-combox-default-rename-caption
tf
)
(dcl-Control-setenabled
xd-att-def-edit-combox-default-rename
tf
)
)
(defun c:xd-att-def-edit-combox-tag#OnSelChanged
(ItemIndexOrCount Value /)
(if (/= value "")
(progn (_visible-1 t)
(dcl-Control-SetText
xd-att-def-edit-combox-tag-rename
(car (nth ItemIndexOrCount tags))
)
(dcl-Control-SetText
xd-att-def-edit-combox-prompt-rename
(caddr (nth ItemIndexOrCount tags))
)
(dcl-Control-SetText
xd-att-def-edit-combox-default-rename
(cadddr (nth ItemIndexOrCount tags))
)
(setq attename (cadr (nth ItemIndexOrCount tags)))
)
(_visible-1 nil)
)
)
(defun c:xd-att-def-edit-combox-block#OnSelChanged
(ItemIndexOrCount Value /)
(if (/= value "")
(progn (dcl-Control-SetEnabled
xd-att-def-edit-combox-tag-caption
t
)
(dcl-Control-SetEnabled xd-att-def-edit-combox-tag t)
(dcl-Control-SetEnabled
xd-att-def-edit-combox-tag-caption
t
)
(setq attdefs (xdrx_block_getentities value '((0 . "att*"))))
(setq tags (mapcar '(lambda (x)
(xdrx_getpropertyvalue
x
"tag"
"prompt"
"textstring"
)
(list #tag x #prompt #textstring)
)
attdefs
)
)
(dcl-Control-SetList
xd-att-def-edit-combox-tag
(mapcar 'car tags)
)
)
)
)
(defun c:xd-att-def-edit-button-quit#OnClicked (/)
(dcl-form-close xd-att-def-edit-form 5)
)
(defun c:xd-att-def-edit-button-pick#OnClicked (/)
(dcl-form-close xd-att-def-edit-form 3)
)
(defun _pick ()
(if (setq e (car (xdrx_entsel "\n拾取属性块<返回>:" '((66 . 1)))))
(setq blkname (xdrx_getpropertyvalue e "name"))
)
)
(defun c:xd-att-def-edit-button-ok#OnClicked (/)
(setq #tag (dcl-Control-GetText xd-att-def-edit-combox-tag-rename))
(setq #prompt
(dcl-Control-GetText xd-att-def-edit-combox-prompt-rename)
)
(setq #default (dcl-Control-GetText
xd-att-def-edit-combox-default-rename
)
)
(if (or (= #tag "") (= #prompt "") (= #default ""))
(dcl-messagebox "数据无值,请检查." "晓东温馨提示")
(progn (setq
blkname (dcl-Control-GetText xd-att-def-edit-combox-block)
)
(dcl-form-close xd-att-def-edit-form 4)
(xdrx_setpropertyvalue
attename "tag" #tag "textstring" #default "prompt"
#prompt)
(xdrx_prompt "\n属性定义已经修改.")
)
)
)
(setq atts (xd::block:getattdefs))
(if (not atts)
(xdrx_prompt "\n当前图没发现属性块.")
(progn (dcl-project-import xd-odcl-att-def-edit-data)
(setq doContinue t)
(while doContinue
(setq doContinue nil)
(setq result (dcl-form-show xd-att-def-edit-form))
(cond ((= result 3) (_pick) (setq doContinue t))
(t (setq doContinue nil))
)
)
)
)
(princ)
)
谢谢提供好源码。。 这个方便。 谢谢分享!!学习一下!!! 缺少的函数在这里
http://bbs.xdcad.net/forum.php?mod=viewthread&tid=718289&highlight=GETATTDEFS
不过我试用后发现有的改不了。另外这个还可以增加功能,比如原来的属性快里面的某个属性是已经填了,但是现在看不到。 本帖最后由 newer 于 2018-10-12 12:42 编辑
sunshinejwt 发表于 2018-10-12 09:43
缺少的函数在这里
http://bbs.xdcad.net/forum.php?mod=viewthread&tid=718289&highlight=GETATTDEFS
不 ...
请把不能修改的图传上来。另外,这个程序是修改属性定义的标签的,不是修改块的属性值的
evayleung 发表于 2018-10-7 00:27
谢谢提供好源码。。
你能看的懂他写的是什么吗? 默认值都能改哪一些 shqvc 发表于 2018-10-13 18:22
你能看的懂他写的是什么吗? 默认值都能改哪一些
你做图块前,你属性ATTDEF定义的那些。
不是做好块后,插入时候提示你的那些。 谢谢分享
页:
[1]