明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 524|回复: 0

CAD控件COM接口标注样式

[复制链接]
发表于 2019-5-24 10:19 | 显示全部楼层 |阅读模式
增加标注样式
用户可以增加标注样式到数据库,具体实现c#代码如下:
  1. private void CreateDim()
  2. {
  3.     //返回控件的数据库对象
  4.     MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
  5.     //返回数据库中的标注样式表对象
  6.     IMxDrawDimStyleTable mxdim = database.GetDimStyleTable();
  7.     //增加新的标注样式
  8.     IMxDrawDimStyleTableRecord dimstr = mxdim.Add("mydim");
  9.     //设置样式
  10.     dimstr.SetDimVarDouble(40, 20.0);
  11.     //返回数据库中的标注样式表对象
  12.     database.CurrentlyDimstyleName = "mydim";
  13. }
得到标注样式名
用户可以得到所有标注样式名,具体实现c#代码如下:
  1. private void GetAllDim()
  2. {
  3.     MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
  4.     //返回数据库中的文字样式表对象
  5.     MxDrawDimStyleTable spDimStyleTable = database.GetDimStyleTable();
  6.     //创建一个遍历层表中所有图层的遍历器
  7.     var spIter = spDimStyleTable.NewIterator();
  8.     // 得到所有图层名
  9.     string sRet = null;
  10.     //移动当前遍历器位置
  11.     for (; !spIter.Done(); spIter.Step(true, true))
  12.     {
  13.         //返回遍历器当前位置的记录
  14.         var spDimStyleTableRec = spIter.GetRecord();
  15.         //符号表记录名属性
  16.         var sName = spDimStyleTableRec.Name;
  17.         // 0零层不参加比较
  18.         if (sName != "0")
  19.         {
  20.             if (sRet == null)
  21.                 sRet = sName;
  22.             else
  23.             {
  24.                 sRet = sRet + "," + sName;
  25.             }
  26.         }
  27.     }
  28.     MessageBox.Show(sRet);
  29. }
删除标注样式
用户可以得到删除某个标注样式,具体实现c#代码如下:
  1. private void DelDim()
  2. {
  3.     string txt = textBox2.Text;
  4.     MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
  5.     //返回数据库中的样式表对象
  6.     IMxDrawDimStyleTable DimStyleTable = database.GetDimStyleTable();
  7.     //得到样式表表中的样式对象
  8.     IMxDrawDimStyleTableRecord DimStyleRec = DimStyleTable.GetAt(txt, false);
  9.     if (DimStyleRec == null)
  10.         return;
  11.     //删除对象
  12.     DimStyleRec.Erase();
  13.     MessageBox.Show("成功删除标注样式");
  14. }





您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-25 06:39 , Processed in 0.300887 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表