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

我想选择“GCZJ”层的所有文字,但选不上,程序如下:PrivateSubcommand2_Click()AppActivateacadApp.CaptionOnErro... 我想选择“GCZJ”层的所有文字,但选不上,程序如下:
Private Sub command2_Click()
AppActivate acadApp.Caption
On Error Resume Next
Dim ssetobj As AcadSelectionSet
Set ssetobj = acadApp.ActiveDocument.SelectionSets.Add("test1")
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) = "GCZJ"
ssetobj.Select acSelectionSetAll, , , FType, FData
For Each pickedobjs In ssetobj
pickedobjs.Color = acGreen '把选上的实体变成绿色
pickedobjs.Update
Next
ssetobj.Delete
AppActivate form1.Caption
End Sub

求高手分析一下问题出在哪?谢谢了
可以肯定就是过滤器设置的问题,我不知道过滤器到底该怎样设?
展开
 我来答
快乐小朱家
2011-08-02 · TA获得超过1013个赞
知道小有建树答主
回答量:649
采纳率:40%
帮助的人:380万
展开全部
我调整测式了一下,选集过滤没问题
你删掉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
成寒梦
2011-07-21 · TA获得超过1260个赞
知道小有建树答主
回答量:963
采纳率:0%
帮助的人:583万
展开全部
个就很快了,主要看一下模块,模块知道了,才能谈CAD开发,好多东西VB和VBA可以互用,但要把CAD中搞好的模块调出来用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式