乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 55|回复: 1

VBA能否通过扩展数据中的组码过滤选择集

[复制链接]

3

主题

16

帖子

2

银币

初来乍到

Rank: 1

铜币
28
发表于 2015-8-6 12:31:00 | 显示全部楼层 |阅读模式
我为对象添加了一些扩展数据,想通过护展数据的组码来过滤选择集,不知道能不能实现
程序代表码大概是这样:
Sub SelExtendData()    Dim spt(2) As Double, ept(2) As Double
    Dim aLine As AcadLine
    spt(0) = 0: spt(1) = 0
    ept(0) = 10: ept(1) = 10
    Set aLine = ThisDrawing.ModelSpace.AddLine(spt, ept)
    Dim xDataType(1) As Integer
    Dim xDataValue(1) As Variant
    xDataType(0) = 1001: xDataValue(0) = "Jika"
    xDataType(1) = 1000: xDataValue(1) = "DGX"
    aLine.SetXData xDataType, xDataValue
    Dim sSet As AcadSelectionSet
    Dim FilterType(0) As Integer
    Dim FilterData(0) As Variant
    FilterType(0) = 1001: FilterData(0) = "jika"       ’这一句组码可以生成选择集
    Set sSet = CreateSelection("aa")                       'CreateSelection(''aa")是一个自定义的创建选择集函数
    sSet.Select acSelectionSetAll, , , FilterType, FilterData
    MsgBox sSet.Count
    sSet.Delete
End Sub
我的问题是想通过 FilterType(0) = 1000: FilterData(0) = "DGX" 这一句或其他方式定义选择集
有没有高手遇到过这样的问题,麻烦给个合理的定义选择集过滤条的方法,谢谢!
回复

使用道具 举报

3

主题

16

帖子

2

银币

初来乍到

Rank: 1

铜币
28
发表于 2015-8-7 10:20:00 | 显示全部楼层

目前发现只有AcadLWPolyline对象(轻量多段线),可以用1000组码进行过滤选择集。
FilterType(0) = 1000: FilterData(0) = "DGX"
有不同意见的可以跟贴讨论。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-4-20 05:13 , Processed in 1.520127 second(s), 56 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表