[原著翻译]c#.net改变AutoCAD块中内容的颜色(用c#对autocad进行二次开发系列之一)
c#.net改变AutoCAD块中内容的颜色
下面是我最近遇到的一个问题:
在.net中我如何调出AutoCAD的颜色对话框呢?我需要让用户选择一个块,然后弹出AutoCAD的颜色选择对话框,然后用用户选择的颜色来运用到选择的块中的内容中。
总部设在圣保罗的DevTech Americas的一个新成员-Augusto Gonçalves,用如下的代码回答了我的问题(我进行了细微的修改,为了使这篇blog上的代码便于阅读)。谢谢您,Augusto!
顺便说一句,这里有一篇 旧博客,或许对这个话题感兴趣的人有些用处。
下面是用c#写得代码:
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
这里是一个在AutoCAD中插入"Architectural - Imperial" 简单的块后运行CB命令的快速示例。
运行CB命令之后选中我们的跑车,我们看到了颜色选择对话框弹出, 从中我们可以选择索引颜色,真彩色或者配色系统等:
我们可以看到选中块的颜色已经变成选中的颜色(哈,事实上是块的颜色变为选中的颜色,同时块中全部内容的颜色都随层而变了):
这个块正好是一个动态块,所以如果我们把它变为一个卡车的话,我们可以看到颜色也已经传给它了(当然这些图形都存在块的数据表中):
随便提一句,对于看到代码中的拼写表示的显然不同的用法表示迷惑的话,请看看我早期的这篇文章。:)