waley111 发表于 2006-8-9 21:52:00

[VBA]用VB插入带属性的块?

<P>我想使用VB来连接CAD绘图</P>
<P>实现做好一个带属性的块单独保存在一个dwg文件中</P>
<P>现在想将这个属性块插入到我用vb绘制的图形中,并且修改属性的值</P>
<P>怎么来实现啊?</P>
<P>愁死了,谢谢!</P>


<P>另外我感觉,用vb连接CAD的方法绘图,速度比VBA直接绘制慢好多哦,大家有没有同感!</P>

wyj7485 发表于 2006-8-10 08:09:00

本帖最后由 作者 于 2006-8-10 10:29:32 编辑 <br /><br /> 看看置顶的帖子<A href="dispbbs.asp?boardID=27&amp;ID=6098&amp;page=1" target="_blank" >dispbbs.asp?boardID=27&amp;ID=6098&amp;page=1</A>

lazybug 发表于 2006-8-10 16:38:00

<P>我VBA比较菜,看不大懂二楼链接的帖子</P>
<P>我的理解是这样的:</P>
<P>&nbsp;' 向块添加属性<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp; Set attributeObj = blockObj.AddAttribute(height, mode, _<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; prompt, insertionPoint, tag, value)<BR>&nbsp;&nbsp;&nbsp; ' 插入块,创建块参照<BR>&nbsp;&nbsp;&nbsp; ' 和属性参照<BR>&nbsp; <BR>&nbsp;&nbsp;&nbsp; Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock _<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (insertionPnt, "BlockWithAttribute", 1#, 1#, 1#, 0)<BR></P>
<P>&nbsp;</P>
<P>'如果开中带着多个属性,我不知道AddAttribute如何处理.我自己的处理办法见<A href="http://bbs.mjtd.com/forum.php?mod=viewthread&tid=53460" target="_blank" >http://bbs.mjtd.com/forum.php?mod=viewthread&tid=53460</A>五楼</P>

wyj7485 发表于 2006-8-10 16:53:00

块中多个属性是与在cad下属性编辑器中的顺序相同的,要修改哪个先在cad下查查位置

lazybug 发表于 2006-8-10 17:02:00

<P>有问题的不是修改,是插入。我的比较绕的解决方案就是插入块,属性值为空,然后修改它的属性为我指定的"string1" "string2"……</P>
<P>这个问题用Lisp表述就是(command "insert" "B-GKBTI" pt "" "" "" "string1" "string2"……)</P>
<P>用VBA插入块的时候怎样将"string1" "string2"……加进去?AddAttribute?但是有多个属性值,AddAttribute怎么处理?</P>

wyj7485 发表于 2006-8-10 17:41:00

<P>一个一个的加啊</P>
页: [1]
查看完整版本: [VBA]用VB插入带属性的块?