明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1798|回复: 3

[VBA]怪!这段程序为什么要运行两次才能实现?

[复制链接]
发表于 2006-4-24 15:16:00 | 显示全部楼层 |阅读模式
我在书上找了段关于在右键菜单中增加条目的代码,可不知怎么回事,每次都需运行两次才能实现,希望高手指导,谢谢!
  1. Sub Ch6_AddMenuItemToshortcutMenu()
  2. On Error Resume Next
  3. Dim currMenuGroup As AcadMenuGroup
  4. Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)
  5. '找到快捷菜单并赋值它为shortcutMenu变量
  6. Dim scMenu As AcadPopupMenu
  7. Dim entry As AcadPopupMenu
  8. For Each entry In currMenuGroup.Menus
  9. If entry.ShortcutMenu = True Then
  10. Set scMenu = entry
  11. End If
  12. Next entry
  13. ' 在快捷菜单中增加菜单项
  14. Dim newMenuItem As AcadPopupMenuItem
  15. Dim openMacro As String
  16. ' 为宏赋值VBA表达式"ESC ESC _open "
  17. openMacro = Chr(3) + Chr(3) + Chr(95) + "open" + Chr(32)
  18. Set newMenuItem = scMenu.AddMenuItem("", Chr(Asc("&")) + "OpenDWG", openMacro)
  19. End Sub
 楼主| 发表于 2006-4-26 19:16:00 | 显示全部楼层

难道就没人查出哪出错了吗?或者程序本身就没问题,是我的cad没装好?

HELP!

发表于 2006-4-27 09:31:00 | 显示全部楼层

你把第四行的定义改为:

Set currMenuGroup = acadapp.MenuGroups.Item(0)

试试!

发表于 2006-4-27 11:17:00 | 显示全部楼层
scMenu.AddMenuItem,你跟踪下程序,我的系统autocad2002跟踪下,第一次运行scmenu总是空,scMenu.AddMenuItem当然也就不能实现,,,,,,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 04:40 , Processed in 0.174422 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表