乐筑天下

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

运行起来无错误,但就是初始化窗体时不显示块属性?

[复制链接]

1

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
6
发表于 2006-12-3 02:39:00 | 显示全部楼层 |阅读模式
Private Sub UserForm_Initialize()
  '根据的版本来确定使用ObjectDBX的版本
      If Left(Version, 2) = "15" Then
          Set objDbx = CreateObject("ObjectDBX.AxDbDocument.1")
      ElseIf Left(Version, 2) = "16" Then
          Set objDbx = CreateObject("ObjectDBX.AxDbDocument.16")
      End If
      
  '判断图中是否有TitleTable模块,若有则读取图块的信息;否则初始化为缺省值。
      Dim objBlkref As AcadBlockReference
      Dim objEnt As AcadEntity
      Dim VarAttributes As Variant
      Dim i As Integer
      On Error Resume Next
      For Each objEnt In ThisDrawing.Blocks
          '取得块属性
          If StrComp(objEnt.Name, "TitleTable") = 1 Then
          Set objBlkref = objEnt
          VarAttributes = objBlkref.GetAttributes
          For i = LBound(VarAttributes) To UBound(VarAttributes)
          If UCase(VarAttributes(i).TagString) = "模块代号01" Then txtbox1.Text = VarAttributes(i).TextString
          If UCase(VarAttributes(i).TagString) = "模块代号02" Then txtbox2.Text = VarAttributes(i).TextString
                  
          Next i
         
          Else
          ThisDrawing.Utility.Prompt vbCr & "图中没有标题栏."
          txtbox1.Text = "1"
          txtbox2.Text = "2"                  
          End If
   
      Next objEnt
End Sub
其中,txtbox1,txtbox2是窗体上的两个txtbox控件。CAD中已经存在TitleTable属性块,但是运行该代码后,对话框窗体上这两个控件却空空如也,甚至"1","2"都没有。请高手指点一下,谢谢!!!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-7 00:48 , Processed in 0.270830 second(s), 55 queries .

© 2020-2025 乐筑天下

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