购物站 加入收藏  -  设为首页
您的位置:购物站 > 新零售 > 正文
VB二次开发CAD关于选择集的语法问题,请帮忙从下面的程序中找一下问题到底出在哪?
VB二次开发CAD关于选择集的语法问题,请帮忙从下面的程序中找一下问题到底出在哪?
提示:

VB二次开发CAD关于选择集的语法问题,请帮忙从下面的程序中找一下问题到底出在哪?

回答过一次了

选集过滤没问题,具体参考CAD的《DXF参考》
你删掉On Error Resume Next再测试一下,看是哪里出了问题
查看一下是否引用了CAD,图层字母是否区分大小写
以下我通过了测试

Dim acadApp As AcadApplication
Dim acadDoc As AcadDocument

Private Sub Command1_Click()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
End If

Set acadDoc = acadApp.ActiveDocument

Dim FType(0 To 1) As Integer
Dim FData(0 To 1) As Variant
FType(0) = 0
FData(0) = "TEXT"
FType(1) = 8
FData(1) = "GCJZ"

Dim ssetobj As AcadSelectionSet
Set ssetobj = acadDoc.SelectionSets.Add("test2")
ssetobj.Select acSelectionSetAll, , , FType, FData

For Each pickedobjs In ssetobj
pickedobjs.Color = acGreen '把选上的实体变成绿色
pickedobjs.Update
Next
ssetobj.Delete


End Sub

vb二次开发cad的选择集程序的问题,求高手帮忙解答一下
提示:

vb二次开发cad的选择集程序的问题,求高手帮忙解答一下

我调整测式了一下,选集过滤没问题
你删掉On Error Resume Next再测试一下,看是哪里出了问题
查看一下是否引用了CAD,图层字母是否区分大小写
以下我通过了测试

Dim acadApp As AcadApplication
Dim acadDoc As AcadDocument

Private Sub Command1_Click()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
End If

Set acadDoc = acadApp.ActiveDocument

Dim FType(0 To 1) As Integer
Dim FData(0 To 1) As Variant
FType(0) = 0
FData(0) = "TEXT"
FType(1) = 8
FData(1) = "GCJZ"

Dim ssetobj As AcadSelectionSet
Set ssetobj = acadDoc.SelectionSets.Add("test2")
ssetobj.Select acSelectionSetAll, , , FType, FData

For Each pickedobjs In ssetobj
pickedobjs.Color = acGreen '把选上的实体变成绿色
pickedobjs.Update
Next
ssetobj.Delete


End Sub