semisun 发表于 2008-4-13 14:36:00

[求助]定义AutoCAD图层颜色的问题

<p>各位高手,本人使用2006版Autocad,在使用VBA定义新的AutoCAD图层时,使用TrueColor方法设置颜色,当只启动一个CAD时,颜色设置没有问题,但是当通过程序启动CAD之前,已经有一个AutoCAD打开了,则图层颜色不能设置,提示“对象 'TrueColor' 方法的 'IAcadLayre2' 失败”错误。</p><p>程序代码如下,</p><p>Dim locLineLayer As AcadLayer<br/>Dim layColor As AcadAcCmColor<br/>Dim intPos1 As Integer<br/>Dim layerNames As String<br/>Dim entryLayer As AcadLayer</p><p>layerNames = ""<br/>For Each entryLayer In DocHuawen1.Layers<br/>&nbsp;&nbsp; layerNames = layerNames + entryLayer.Name + vbCrLf<br/>Next<br/>intPos1 = InStr(1, layerNames, "locLineLayer", vbTextCompare)<br/>If intPos1 = 0 Then&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '如果不存在locLineLayer图层,则创建图层<br/>&nbsp;&nbsp; Set locLineLayer = DocHuawen1.Layers.Add("locLineLayer")&nbsp;&nbsp; '添加locLineLayer图层<br/>&nbsp;&nbsp; DocHuawen1.ActiveLayer = locLineLayer<br/>&nbsp;&nbsp; locLineLayer.Linetype = "Continuous" '设置<br/>&nbsp;&nbsp; Set layColor = AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.16")&nbsp;</p><p>&nbsp;&nbsp; Call layColor.SetRGB(0, 255, 255) '设置标注颜色为 青色<br/>&nbsp;<font color="#ff0000">&nbsp; locLineLayer.TrueColor = layColor&nbsp;&nbsp; ' <strong>执行到该语句提示出错</strong></font><br/>End If</p><p>错误提示:Err.Number=-2147417851</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Err.Description = 对象 'TrueColor' 方法的 'IAcadLayre2' 失败</p><p></p><p>请高手帮着分析一下原因,谢谢!</p><p></p>

semisun 发表于 2008-4-13 14:53:00

<p>错误提示</p><p></p>

songtq 发表于 2008-4-14 06:40:00

<p>考虑其他方法设置图层颜色,也许就不会出错了,但我也不会</p>

semisun 发表于 2008-4-15 00:00:00

<p>请高手指点,如何设置图层颜色?多谢了!</p>

semisun 发表于 2008-4-15 21:05:00

<p>请大家谈一下如何设置图层颜色吧</p><p>大家一定要帮助解决问题呀</p><p>先谢了!</p>

home 发表于 2008-4-17 22:16:00

<p>dim hs_layer as AcadLayer</p><p>hs_layer.Color = acRed</p><p>我是这样设置的</p>

semisun 发表于 2008-4-21 14:10:00

<p>谢谢home的指点,但Autocad2006的AcadLayer没有color属性,只有一个TrueColor属性,没有办法这样设置。</p><p></p>

songtq 发表于 2008-4-24 11:34:00

试着使用VBA宏进行设置图层,可能不会出错

mccad 发表于 2008-4-24 12:41:00

Color属性虽然表中没有,但确认还是可以设置的。

zzxxhhu 发表于 2008-4-27 14:24:00

我用2004vba编的,用2007是可以用.color设置的,但2006我没有用过。
页: [1] 2
查看完整版本: [求助]定义AutoCAD图层颜色的问题