明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 878|回复: 1

用Recordset管理实体数据

[复制链接]
发表于 2008-5-28 15:04:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2008-5-28 15:16:10 编辑

  1. Sub gggg()
  2. Dim Ent As AcadEntity, tt As AcadText
  3.           Dim adoRecordset    As ADODB.Recordset
  4.           Set adoRecordset = New ADODB.Recordset
  5.           aa = Array("EntityText", "X", "Y", "Z"): bb = Array(adBSTR, adDouble, adDouble, adDouble)
  6.   With adoRecordset
  7.           For i = 0 To 3                '为Recordset2个字段,即为  DataGrid  添加2列
  8.             .Fields.Append aa(i), adVariant, , adFldMayBeNull
  9.             .Fields.Item(i).Type = bb(i)
  10.           Next i
  11.           .Open
  12.     For Each Ent In ThisDrawing.ModelSpace
  13.        Select Case Ent.ObjectName
  14.          Case "AcDbText"
  15.            Set tt = Ent
  16.              If tt.Layer = "零件表格文本" Then
  17.                .AddNew
  18.                .Fields(1).Value = Round(tt.InsertionPoint(0), 2)
  19.                .Fields(2) = Round(tt.InsertionPoint(1), 2)
  20.                .Fields(3) = 0
  21.                .Fields(0) = tt.TextString
  22.              End If
  23.         End Select
  24.      Next Ent
  25.      .Sort = y
  26.      .MoveFirst
  27.      For ii = 0 To .RecordCount - 1
  28.        Debug.Print .Fields(0).Value, .Fields(1).Value; .Fields(2).Value
  29.        .MoveNext
  30.      Next ii
  31.   End With
  32. End Sub

发表于 2008-5-30 09:11:00 | 显示全部楼层
赞一个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 09:47 , Processed in 0.151778 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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