明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1873|回复: 4

[求助]如何在VB.net开发Autocad时在创建选择集时加入过滤机制

[复制链接]
发表于 2003-1-19 16:20:00 | 显示全部楼层 |阅读模式
看看下面的代码,不知有何错误?总是通不过,请各位大侠帮忙!

     Public AcadApp As AutoCAD.AcadApplication
     Public CurrentDocument As AutoCAD.AcadDocument

     Private Sub Test()
        Try
            AcadApp = GetObject(, "AutoCAD.Application")
        Catch
            AcadApp = CreateObject("AutoCAD.Application")
        Finally
            AcadApp.Visible = True
        End Try
        CurrentDocument = AcadApp.ActiveDocument
        Dim sset As AutoCAD.AcadSelectionSet
        Try
            sset = CurrentDocument.SelectionSets.Item("NewSet")
            sset.Clear()
        Catch
            sset = CurrentDocument.SelectionSets.Add("NewSet")
        End Try
        Dim FilterType(0) As Integer
        Dim FilterData(0) As Object
        FilterType(0) = 0
        FilterData(0) = "Line"
        sset.SelectOnScreen(FilterType, FilterData)
    End Sub
发表于 2003-1-19 16:43:00 | 显示全部楼层

Dim FilterData(0) As Object 改为Dim FilterData(0) As String 试试

发表于 2003-1-19 18:21:00 | 显示全部楼层

过滤的类型声明错误

对于FilterType,应声明为Integer类型的数组,对于FilterData,应声明为Variant类型的数组。
在CAD中,过滤机制是这样理解的,过滤的类型是组码,一定是整型的,过滤的数据可以是字符串,整型,实数,或者表示点的数组,因而要用到变体型。
 楼主| 发表于 2003-1-21 00:27:00 | 显示全部楼层

试过了,还是不行!

 楼主| 发表于 2003-1-21 00:29:00 | 显示全部楼层

VB.net中已将Variant类型用Object代替了!

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

本版积分规则

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

GMT+8, 2024-11-28 19:04 , Processed in 0.173258 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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