乐筑天下

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

[编程交流] 需要开发者2012的帮助

[复制链接]

3

主题

14

帖子

11

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 22:38:33 | 显示全部楼层 |阅读模式
我正在创建一个应用程序,它可以打开一个绘图,自动将标记添加到标题栏。一切都很好,直到它开始透过物体看。我得到“无法获取文档对象”,我还使用公共和互操作导入。这就是问题所在。它开始搜索对象,然后失败。我还想知道是否有办法限制搜索,因为我只关心块。
 
  1. For Each MyObj In MyDwgDoc.ModelSpace
  2.            booMfgTag = False
  3.            '** Find all Titleblocks
  4.            If MyObj.ObjectName = "AcDbBlockReference" Then
  5.                If MyObj.Name = "MSP-B-BORDER" Then
  6.                    XOffset = (12 + 47 / 64) - 1.875
  7.                    DScale = 1.0#
  8.                    booMfgTag = True
  9.                ElseIf MyObj.Name = "MSP-D-BORDER" Then
  10.                    XOffset = (24 + 29 / 32) - 3.75
  11.                    DScale = 2.0#
  12.                    booMfgTag = True
  13.                ElseIf MyObj.Name = "B-BORDER" Then
  14.                    XOffset = (12 + 47 / 64) - 1.875
  15.                    DScale = 1.0#
  16.                    booMfgTag = True
  17.                ElseIf MyObj.Name = "D-BORDER" Then
  18.                    XOffset = (24 + 29 / 32) - 3.75
  19.                    DScale = 2.0#
  20.                    booMfgTag = True
  21.                ElseIf MyObj.Name = "BLOCK1" Then
  22.                    XOffset = (24 + 29 / 32) - 3.75
  23.                    DScale = 2.0#
  24.                    booMfgTag = True
  25.                End If
  26.                If booMfgTag Then
  27.                    TBInsrtPt = MyObj.InsertionPoint
  28.                    '** Set-up and insert MfgTag
  29.                    InsertPnt(0) = TBInsrtPt(0) + XOffset * MyObj.XScaleFactor
  30.                    InsertPnt(1) = TBInsrtPt(1)
  31.                    InsertPnt(2) = TBInsrtPt(2)
  32.                    MTObj = MyDwgDoc.ModelSpace.InsertBlock(InsertPnt, strBlock, _
  33.                        MyObj.XScaleFactor * DScale, MyObj.YScaleFactor * DScale, MyObj.ZScaleFactor * DScale, 0.0#)
  34.                    '** Change the attributes of the new block
  35.                    RetVal = MTObj.GetAttributes
  36.                    If IsDBNull(DataGridView3.Rows(ridx).Cells(4).Value) Then
  37.                        DataGridView3.Rows(ridx).Cells(4).Value = " "
  38.                    End If
  39.                    If IsDBNull(DataGridView3.Rows(ridx).Cells(5).Value) Then
  40.                        DataGridView3.Rows(ridx).Cells(5).Value = " "
  41.                    End If
  42.                    If IsDBNull(DataGridView3.Rows(ridx).Cells(6).Value) Then
  43.                        DataGridView3.Rows(ridx).Cells(6).Value = " "
  44.                    End If
  45.                    If IsDBNull(DataGridView3.Rows(ridx).Cells(7).Value) Then
  46.                        DataGridView3.Rows(ridx).Cells(7).Value = " "
  47.                    End If
  48.                    For intI = LBound(RetVal) To UBound(RetVal)
  49.                        If RetVal(intI).TagString = "CSJOB" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(3).Value
  50.                        If RetVal(intI).TagString = "LOCATION" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(4).Value
  51.                        If RetVal(intI).TagString = "DESCRIPTION" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(5).Value
  52.                        If RetVal(intI).TagString = "RESPONSIBLE1" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(6).Value
  53.                        If RetVal(intI).TagString = "RESPONSIBLE2" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(7).Value
  54.                        If RetVal(intI).TagString = "QTY" Then RetVal(intI).TextString = DataGridView3.Rows(ridx).Cells(1).Value
  55.                    Next intI
  56.                    booChange = True
  57.                End If
  58.            End If
  59.        Next
回复

使用道具 举报

3

主题

14

帖子

11

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 22:49:54 | 显示全部楼层
我正在用VB创建一个应用程序。NET express 2010使用。NET FRAMEWORK 4.0。我已经编程多年了,但这是我第一次尝试使用autocad developer。我试图动态打开一个图形并搜索所有块对象,然后将标记附加到标题栏。现在,它打开CAD并打开图形。。然后我得到“未能获取文档对象”,它无限地抛出错误。我也在使用AutoCAD 2012。因此,我需要有关正确方法的帮助,以定位和编辑块,然后退出子例程。以下是头痛发生的相关代码。哦。。有没有一点我也不知道。我只有互操作和通用导入。
回复

使用道具 举报

49

主题

1246

帖子

1210

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
254
发表于 2022-7-6 23:00:13 | 显示全部楼层
把它扔出去,试试论坛http://www.theswamp.org-他们对那里的编程很感兴趣,很多。网络大师什么的。传播信息就是一切。
 
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-6 23:15:08 | 显示全部楼层
请阅读代码发布指南并编辑您的帖子。
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-6 23:21:15 | 显示全部楼层
请为同一个问题只发一条帖子。我组合了线程。
回复

使用道具 举报

3

主题

14

帖子

11

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 23:37:14 | 显示全部楼层
好的,我已经使用代码指南重新发布了。。我想知道那是哪里。。所以一切都应该井然有序。。现在我希望它以这样的方式展示,我会得到一些好的提示
回复

使用道具 举报

49

主题

1246

帖子

1210

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
254
发表于 2022-7-6 23:39:47 | 显示全部楼层
别忘了我上面的帖子。你会在那里得到更好更快的帮助。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-1-31 20:54 , Processed in 0.206847 second(s), 77 queries .

© 2020-2025 乐筑天下

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