乐筑天下

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

块删除问题

[复制链接]

14

主题

25

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2002-10-17 10:50:00 | 显示全部楼层 |阅读模式
删除块前,应先删除块的引用,怎样查找块的引用?(VBA)
回复

使用道具 举报

0

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
4
发表于 2002-10-17 15:05:00 | 显示全部楼层
先objectname="AcadBlockReference" 后 BlkRefBuf.name="你要的块名" ,在BlkRef.delete[br]
回复

使用道具 举报

0

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
4
发表于 2002-10-17 15:07:00 | 显示全部楼层
先objectname="AcadBlockReference" 后 BlkRefBuf.name="你要的块名" ,再BlkRefBuf.delete,删除的范围取决于你遍历的范围。
回复

使用道具 举报

0

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
4
发表于 2002-10-20 20:22:00 | 显示全部楼层
dim BlkRefBuf as AcadBlockReference,
用 MSPACE,PSPACE,BLOCK内的COUNT属性,进行循环检查每一个对象。
if  实体.objectname="AcadBlockReference" then
set BlkRefBuf=该实体
然后进行删除。
回复

使用道具 举报

cag

87

主题

265

帖子

10

银币

中流砥柱

Rank: 25

铜币
613
发表于 2002-10-21 19:41:00 | 显示全部楼层

不知能否用VBA制作无名块?
回复

使用道具 举报

26

主题

589

帖子

10

银币

中流砥柱

Rank: 25

铜币
693
发表于 2002-10-26 14:55:00 | 显示全部楼层
函数如下:
'删除块引用
Public Sub DeleteBlockRef(ByVal Name As String)
    Dim EntObj As AcadEntity
   
    On Error GoTo ErrTrap
    If Name = "" Then Exit Sub
    For Each EntObj In ThisDrawing.ModelSpace
       If StrComp(EntObj.ObjectName, "AcDbBlockReference", vbTextCompare) = 0 Then
          If StrComp(EntObj.Name, Name, vbTextCompare) = 0 Then
             EntObj.Delete
          End If
       End If
    Next
    Set EntObj = Nothing
    Exit Sub
   
ErrTrap:
    If Not (EntObj Is Nothing) Then Set EntObj = Nothing
    On Error GoTo 0
End Sub
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2024-11-22 07:00 , Processed in 0.146203 second(s), 64 queries .

© 2020-2024 乐筑天下

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