乐筑天下

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

不用遍历方法,真的不能直接更改图块中子图元的颜色吗?

[复制链接]

120

主题

326

帖子

7

银币

中流砥柱

Rank: 25

铜币
806
发表于 2006-12-24 14:30:00 | 显示全部楼层 |阅读模式
我现在更改图块中子图元颜色的方法,是通过遍历图块,再通过条件语句找到需要更改子图元的句柄号handle后,来实现目标
Dim ent As AcadEntity
  Dim pblock, obj
    For Each obj In ThisDrawing.Blocks("aa") '遍历已知图块名
       If obj.Handle = "92" Then '判断图块中符合条件的子图元句柄handle
          obj.color = 5 ' 更改子图元颜色
         ThisDrawing.Regen (acActiveViewport) '刷新活动窗口
       End If
   Next obj
从理论讲,已知图块名+子图元名柄handle,从上面小程序分析,可以不用遍历的方法,直接更改子图元的颜色.
图块有三种类型:简单块, XRef 块 和布局块.简单块是可以联合在一起形成单个对象或块定义的对象集合,
从简单块定义看,遍历图块更改子图元的颜色是唯一方法.不用遍历的方法,直接更改子图元的颜色是不可行的???
我这种结论对吗????
回复

使用道具 举报

1

主题

8

帖子

1

银币

初来乍到

Rank: 1

铜币
12
发表于 2011-6-13 19:45:00 | 显示全部楼层
同问,尝试了用block.truecolor.colormethod的办法,发现无法更改colormethod的值,通过调试发现,虽然程序中更改了,但是一更改colormethod的值就立即变回原来的值,不知道为什么。求助!
回复

使用道具 举报

3

主题

17

帖子

1

银币

初来乍到

Rank: 1

铜币
29
发表于 2011-6-13 20:23:00 | 显示全部楼层
用选择集试试呢
回复

使用道具 举报

1

主题

8

帖子

1

银币

初来乍到

Rank: 1

铜币
12
发表于 2011-6-16 19:08:00 | 显示全部楼层
回复
选择集还不如遍历省事,只是想找个更方便的的办法
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-30 23:06 , Processed in 0.478801 second(s), 60 queries .

© 2020-2025 乐筑天下

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