68651521 发表于 2006-1-14 19:32:00

如何取得某个图元所在的图层的名字?

<P>VBA中 使用</P>
<P>For Each TempBlock In ThisDrawing.Blocks</P>
<P>Next TempBlock</P>
<P>循环便历所有块的时候 如何才能得到每个块的所在图层的名字?</P>

bland 发表于 2006-1-14 23:49:00

&nbsp;Dim objName As String<BR>&nbsp;&nbsp;&nbsp; Dim entry As AcadEntity<BR>&nbsp;&nbsp;&nbsp; For Each entry In ThisDrawing.ModelSpace<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objName = entry.ObjectName<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; entry.Highlight (True)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "The name of this object is " &amp; objName, vbInformation, "ObjectName Example"<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; entry.Highlight (False)<BR>&nbsp;&nbsp;&nbsp; Next<BR>

68651521 发表于 2006-1-15 00:17:00

<P>是图元所在的图层的名字啊 不是ObjectName </P>
<P>比如一个块 名字叫AA 插在一个图层里 图层名称为 GGG</P>
<P>要显示出 GGG啊。。。 </P>
<P>上面这个程序 显示的ObjectName&nbsp;哦</P>
<P>&nbsp;</P>

bland 发表于 2006-1-15 09:01:00

<P>呵呵,我随便从cad的帮助里找的一段。</P>
<P>你可以借鉴着去找啊。只是希望对你有帮助。</P>

68651521 发表于 2006-1-16 00:12:00

<P>好象Block直接不能读出Layer属性的 但是可以写 55555</P>
<P>就好象Hatch没有Area属性一样 </P>
<P>如何找到一个块&nbsp;得到它所在的图层 再插另外一个不同的的块到这个图层?</P>
<P>&nbsp;</P>

霹雳啪啦啦 发表于 2006-1-18 12:50:00

<P>块不存在图层的问题的。块只是保存在图纸数据库中的一个图形定义,它可以插入在任何一个图层,所以插入后的块参照有图层的属性,但是块不存在图层的属性。</P>

zhuxuhong 发表于 2006-1-18 14:07:00

<DIV>用这段程序就可以的</DIV>
<DIV>Sub aa()<BR>Dim objName As String<BR>&nbsp;&nbsp;&nbsp; Dim entry As AcadBlockReference<BR>&nbsp;&nbsp;&nbsp; For Each entry In ThisDrawing.ModelSpace<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "图层名: " &amp; entry.Layer, vbInformation, "Example"<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; entry.Highlight (False)<BR>&nbsp;&nbsp;&nbsp; Next</DIV>
<DIV>&nbsp;</DIV>
<DIV>End Sub<BR></DIV>
页: [1]
查看完整版本: 如何取得某个图元所在的图层的名字?