清风明月名字 发表于 2012-5-4 17:50:53

将选中的所有线改为线型“CONTINOUS”源码


ZV026将选中的所有线改为线型“CONTINOUS”

但好象过滤器不正确,但由于我是针对所有线,所以没有关系

Private Sub CommandButton245_Click()

' 创建新的选择集
Dim TextReplace
Dim ssetobj As AcadSelectionSet
On Error Resume Next
Set ssetobj = ThisDrawing.SelectionSets.Item("TextReplace")
If Err Then
    Set ssetobj = ThisDrawing.SelectionSets.Add("TextReplace")
Else
    ssetobj.Clear
End If



   

    ssetobj.SelectOnScreen


   
   
   
   
    '创建过滤器,仅选择Text(单行文本)、Mtext(多行文本)、AttDef(属性定义)
   
    '关于过滤器的详细使用资料,请参考有关书籍
   
    Dim fType(0 To 0) As Integer
    Dim fData(0 To 0) As Variant
    fType(0) = 0
    fData(0) = "line"
   
    '选择全部的Text、Mtext、AttDef
   
    ssetobj.Select TextReplace, , , fType, fData
   
    Dim i As Integer
    MsgBox ssetobj.Count
    If ssetobj.Count <> 0 Then
      For i = 0 To ssetobj.Count - 1
            
         ssetobj(i).Linetype = "CONTINOUS"
      Next
    End If
   
    '清空选择集中的数据,准备下一次操作
   
    ssetobj.Clear
   
   
    ssetobj.Delete
   
    Set ssetobj = Nothing


End Sub

reg24211168 发表于 2012-5-5 00:14:09

谢楼主整理这些贴子,有很多很需要的!

yzg_208 发表于 2013-7-11 01:45:46

神奇!
fType(0) = 0
    fData(0) = "line"
这样的过滤条件能够选择全部的Text、Mtext、AttDef?
页: [1]
查看完整版本: 将选中的所有线改为线型“CONTINOUS”源码