数据库插入
我已经创建了这些附加数据库有人能告诉我如何更改…
1)他们插入的默认可见性状态吗
2)它们插入的默认查找属性
我正在使用带有以下宏的下拉菜单进行插入:^C^C-insert;LCC_ XXXX;sc;1.r0;
相应地更改XXXX
**** Hidden Message ***** 从下拉菜单插入与从工具栏插入相同,在这种情况下,我不相信您可以在插入之前更改块的属性。
但是,如果您倾向于从工具选项板插入,那么您将拥有该选项。 我不知道还有别的方法。
不好意思 知道如何控制插入时选择哪个可见性状态吗?我不想每次都能够选择或改变它,我只想让一个不同于当前的活动... 卢克,我得同意威尔的看法
从工具选项板插入将完成所需的操作
右键单击属性并查找要插入的可见性状态。
否则。。。。。。。。 我相信您必须为此推出自己的插件类型
插入<br>抓住插入<br>更改插入<br'>退出<br>然后从下拉菜单运行自定义插入。 Tim,
不确定您所说的“滚动自己类型的插页”是什么意思??
我喜欢使用工具托盘,但这不现实。我的员工现在抱怨由于小显示器和过多的工具栏,他们的绘图区域太小了。 您确实意识到可以将工具选项板设置为出来,然后在完成后缩回,不是吗?
您是否注意到,通过更改工具选项板的视图,您可以将其外观更改为模仿工具栏(某种程度上)?(见下图)
至于Tim的评论,他的意思是您必须创建一个自定义插入例程来动态更改vis状态(或者您可以直接使用它)
;;;=================================================================================================
;;; Function: DYNAMIC_BLOCK_SETPROPERTY
;;;
;;; Description: Inserts a dynamic block, changes a specified property
;;; and automatically highlights it to enable dynamic grips
;;;=================================================================================================
(defun DYNAMIC_BLOCK_SETPROPERTY (strBlockPath strBlockName strPropName strPropValue strAtt /
lista lts pickset1 insPT objLast)
(setvar "attdia" 0)
(setq insPT (getpoint "\n Pick insertion point..."))
(setq lts (getvar "ltscale"))
(if (= strAtt "")
(progn
(if (= (tblsearch "block" strBlockName) nil)
(command "-insert" (strcat strBlockPath strBlockName) insPT lts lts "")
(command "-insert" strBlockName insPT lts lts "")
)
)
(progn
(if (= (tblsearch "block" strBlockName) nil)
(command "-insert" (strcat strBlockPath strBlockName) insPT lts lts "" (strcase strAtt))
(command "-insert" strBlockName insPT lts lts "" (strcase strAtt))
)
)
)
(setq objLast (entlast))
(setq obj (if (= (type objLast) 'vla-object) objLast (vlax-ename->vla-object objLast)))
(if (= (vlax-get-property obj 'isdynamicblock) :vlax-true)
(progn
(setq v (vla-getdynamicblockproperties obj)
vval (vlax-variant-value v)
sal(vlax-safearray->list vval)
tot(length sal)
i 0
)
(while (< i tot)
(if (= (vlax-get-property (nth i sal) "PropertyName") strPropName)
(progn
(vlax-put-property (nth i sal) "Value" strPropValue)
(setq i tot)
)
(setq i (1+ i))
)
)
)
)
(setq pickset1 (ssadd))
(ssadd objLast pickset1)
(sssetfirst nil pickset1)
(princ)
)
按钮后面的代码看起来像这样…
^C^C^P(load "Blocks.lsp");(Dynamic_Block_SetProperty "YourDir" "Your Block Name" "Visibility" "Visibility State Name" "");
如果要插入的数据库具有属性,并且希望自动神奇地填充值…
^C^C^P(load "Blocks.lsp");(Dynamic_Block_SetProperty "YourDir" "Your Block Name" "Visibility" "Visibility State Name" "Your Attribute Value");
耶!马特说的话。
谢谢马特。 好吧,你说服了我。我要穿过工具托盘。然而,这个模块并不适合我,我已经重建了几次。有人能帮我弄明白吗?
当我通过标准的insert命令插入块时,可见性和查找值都按我的预期运行。当我将查找值属性设置为除12" = 1 '之外的任何刻度,并将其插入工具托盘时,所有属性都来自wack。不太确定为什么或如何修复。
页:
[1]