乐筑天下

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

代码请求

[复制链接]

57

主题

235

帖子

3

银币

后起之秀

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

铜币
463
发表于 2006-6-2 11:32:53 | 显示全部楼层 |阅读模式
我需要代码来评估哪些图层在MS中是关闭的或冻结的,然后在所有布局的所有视口中冻结它们。
有人至少得到了接近这一点的东西吗?
:丑陋:

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2006-6-2 12:56:15 | 显示全部楼层
这确实做到了,但使用SendCommand.....
  1. Sub freezeall()
  2. Dim oLay As AcadLayer
  3. Dim lSpace As Long
  4. Dim iEcho As Integer
  5. ThisDrawing.StartUndoMark
  6. lSpace = ThisDrawing.ActiveSpace
  7. iEcho = ThisDrawing.GetVariable("nomutt")
  8. ThisDrawing.SetVariable "nomutt", 1
  9. ThisDrawing.ActiveSpace = acPaperSpace
  10. For Each oLay In ThisDrawing.Layers
  11.     If oLay.Freeze = True Or oLay.LayerOn = False Then
  12.         ThisDrawing.SendCommand "vplayer f " & oLay.Name & vbCr & "a" & vbCr & vbCr
  13.     End If
  14. Next
  15. ThisDrawing.ActiveSpace = lSpace
  16. ThisDrawing.SetVariable "nomutt", iEcho
  17. ThisDrawing.EndUndoMark
  18. End Sub

回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-6-2 13:51:11 | 显示全部楼层
那么vplayer不暴露于VBA?似乎奇怪的是,您可以通过其他方式操纵层
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2006-6-2 19:05:51 | 显示全部楼层
有了。您必须更改存储在视口(1002,1003)中的扩展数据
Frank Z或O制作了一个不错的“sub VpLayerOff”,它googles ok
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-5 18:44 , Processed in 0.732428 second(s), 71 queries .

© 2020-2025 乐筑天下

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