乐筑天下

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

HandleToObject(Handle)能否实现,让块里面的一个实体变色?

[复制链接]

120

主题

326

帖子

7

银币

中流砥柱

Rank: 25

铜币
806
发表于 2006-9-8 16:53:00 | 显示全部楼层 |阅读模式
目的:有一个块是由两个实体组成,选择这个块,就可以得到这个块的handle.
能否通过这个块的handle获得,块里面一个实体的handle,并让它变色?

obtyqlm132h.jpg

obtyqlm132h.jpg


回复

使用道具 举报

120

主题

326

帖子

7

银币

中流砥柱

Rank: 25

铜币
806
发表于 2006-9-8 18:01:00 | 显示全部楼层
请教该如何获取当前图形块中所含的每一个物体

在这个帖子中,MCCAD解答是:

首先需要用HasAttributes属性判断图块是否带有属性。
如果有则使用GetAttributes方法来取得块中的属性。
所取得的返回值是以AttributeReference 对象的数组返回。
这样则可以通过数组得到所有的属性。

而不是象你所写的那样遍历块参照的对象。注意块参照只是一个对象,它只是一个参照,而要遍历的话,也是要对块本身进行遍历。
我的问题是如何对块本身进行遍历?
Dim returnObj As Object
Dim basePnt As Variant
Dim elemod As Object
'On Error Resume Next



ThisDrawing.Utility.GetEntity returnObj, basePnt, "请选择属性块进行编辑"
'程序通过
现在关键的问题是在块内的实体如何定义??
i = 1
If returnObj.ObjectName = "AcDbBlockReference" Then
   
    For Each elemod In returnObj    '(此处显示问题? elemod没有定义)
         
         elemod 这个块内实体如何定义,才能在块遍历块内实体???
            Debug.Print  elemod.handle()

            Next
End If
回复

使用道具 举报

15

主题

53

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
113
发表于 2006-9-8 22:10:00 | 显示全部楼层
我记得Help里有个例子,是对块中的实体进行操作的,你仔细看看例子,我一时也想不起来了。好像是和块有关的例子
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-6 13:43 , Processed in 0.508645 second(s), 61 queries .

© 2020-2025 乐筑天下

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