lwd899 发表于 2010-6-22 21:31:00

[求助]新建标注样式时为什么会产生以“样式代替”?

我用的vb2008和cad2007,我写了一下代码,但是会出现“样式代替”,请问这是怎么回事?

<CommandMethod("netDimStyle")> Public Sub CreateDimStyle()
      Dim db As Database = HostApplicationServices.WorkingDatabase
      Using trans As Transaction = db.TransactionManager.StartTransaction
            ' 得到标注样式表
            Dim dt As DimStyleTable = trans.GetObject(db.DimStyleTableId, OpenMode.ForWrite)
            Dim StyleName As String = "MyDim"
            ' 如果名为"MyDim"的样式不存在,则新建一个文字样式.
            If dt.Has(StyleName) = False Then
                ' 新建一个标注样式表记录.
                Dim dtr As New DimStyleTableRecord()
                ' 设置标注样式名.
                dtr.Name = StyleName
                ' 箭头大小
                dtr.Dimasz = 3
                '' 尺寸线间距
                dtr.Dimdli = 3.75
                '' 小数分隔符
                'dtr.Dimdsep = ","
                '' 尺寸界线超出量
                'dtr.Dimexe = 1.25
                '' 尺寸界线偏移
                dtr.Dimexo = 0.625
                '' 文字偏移
                'dtr.Dimgap = 0.625
                '' 文字位置垂直
                dtr.Dimtad = 1
                '' 文字在内对齐
                dtr.Dimtih = False
                ' 文字高度
                dtr.Dimtxt = 3
                Dim DimstyleId As ObjectId = dt.Add(dtr)
                ' 把标注样式表记录添加到事务处理中.
                trans.AddNewlyCreatedDBObject(dtr, True)
                ' 将标注样式"MyDim"设置为当前标注样式
                db.Dimstyle = DimstyleId
                trans.Commit()
            End If
      End Using
    End Sub

雪山飞狐_lzh 发表于 2010-6-23 20:35:00

<font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; db.SetDimstyleData(dtr);<br/></font>

lwd899 发表于 2010-6-23 21:10:00

<p>好了,太感谢您了!!</p>

stuwhh 发表于 2011-1-16 23:40:00

回复 雪山飞狐_lzh 的帖子

求助:请问版主在c#中引用VB的(非VB编程)?如何只修改标注的全局比例并设置为当前标注?

epwt 发表于 2011-1-17 19:22:34

设置一下Dimscale,
然后绑定一下entity的style 试试。

希望会对你有用。
页: [1]
查看完整版本: [求助]新建标注样式时为什么会产生以“样式代替”?