|
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
Sub AddASubMenu()* n* I4 }- Q' S* ]
'获得当前的菜单组! ?' K0 d1 F4 H/ V. j. z2 K. x
Dim currMenuGroup As AcadMenuGroup" a3 _! Q0 u; C+ u/ S! @; E
: o X# @3 i& x
Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)* ~5 k7 _. G+ s' a/ A0 k5 A
& v" X3 I1 J' D- Y‘创建新菜单- f* j& m0 j& v
2 o* L; D9 c- k: | {9 p
Dim newMenu As AcadPopupMenu
, [ u1 K! v' n3 R% {" V6 |( c! P9 O; I6 |6 j$ A, U
Set newMenu = currMenuGroup.Menus.Add("MyMen" & Chr(Asc("&")) & "u")
1 L8 n, t+ X# W, E% O: u* _, ?. A' I/ H/ q' u8 Z; }3 e
'添加菜单项
# j: H% N% d% Z6 k, M5 b0 GDim macro As String6 r$ L4 S P$ Z! F
/ F6 n2 L6 C! r" l$ Gmacro = Chr(vbKeyEscape) + Chr(vbKeyEscape)! l4 |7 Y! G2 d; Q" ~
'相当于按下两次Esc键
1 H8 O" {: y: A6 _* U h4 ~% e k" D" ]3 B# c0 E( v4 V3 F
8 b) t. N3 E9 M; @8 H+ L'draw(含有子菜单)
3 z) _! B9 [4 _8 L! o" V! \8 ]) P3 q5 Z
Dim menuItemDraw As AcadPopupMenu
9 v: V6 [! X1 U3 a L1 y* }
$ Z! ~2 m; j \$ _5 fSet menuItemDraw = newMenu.AddSubMenu(newMenu.Count + 1, Chr(Asc("&")) & _"Draw")" V, Z# w2 N; T! t
" k @/ U: V2 Y$ t' z6 ?1 g' k'子菜单项目:line
2 b7 Q2 {, K- H: b) T
. M5 ?# h! u9 O8 ?* c7 O: i6 E+ FDim subMenuItemLine As AcadPopupMenuItem
) ^( d+ F1 U7 N" `4 w5 e' p1 @( z" q; E1 i
'Set subMenuItemLine = menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, _Chr(Asc("&")) & "Line", macro & "_line ")
' A5 ~/ V+ F7 m2 g* o; o
/ k$ U( v6 K& K9 P7 m# l6 |/ a'子菜单项目:Ellipse6 @9 f# E V" K: B
+ ~% o3 s2 S8 m8 e3 EDim subMenuItemEllipse As AcadPopupMenuItem `6 R) i- P* [5 g. u3 l
# \( P, P- W s% J$ g# s'Set.subMenuItemEllipse.=menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, Chr(Asc("&")) & "Ellipse", macro & "_ellipse ")
4 ~* T- h ?/ F3 G2 a5 A
+ q0 K* E0 v$ k$ I# s3 T'子菜单项目:arc1 O, }, G# n/ E4 w5 s% v
9 Q- U ?( }- O* y( X; m* h; J
Dim subMenuItemArc As AcadPopupMenuItem
% k1 t& a' H! [& I* @) S9 ~$ _. A* n& \1 F& X. i
'Set subMenuItemArc = menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, Chr(Asc("&")) & "Arc", macro & "_arc ")3 `& M9 U v" s: a3 ?. o8 m2 a
" e5 s* Y4 \2 p. n6 _6 b
'子菜单项目:circle% D# Z: M$ T. t, q0 }3 z
; y3 n3 m+ k2 I' O- V+ V# }
Dim subMenuItemCircle As AcadPopupMenuItem7 o' N0 D# D1 L0 G
3 W* ^$ W5 C8 W7 V7 @& \' G'Set subMenuItemCircle = menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, Chr(Asc("&")) & "Circle", macro & "_circle ")
+ A0 ?; c# b/ ^$ R: e8 O' O% [1 p4 E! {# D
'子菜单项目:SPline7 W+ h; |' `& Y
' ~) L$ l/ L2 `
Dim subMenuItemSPline As AcadPopupMenuItem
( q) v% H- S: N; D2 R5 C
5 q4 {& @6 T4 m1 X'Set subMenuItemSPline = menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, Chr(Asc("&")) & "SPline", macro & "_spline ")- Z6 h& f* x. j% d& V0 u
5 ?5 B. H+ @% _: Z. a7 Y9 @# J
'子菜单项目:Point6 w! c: e2 b+ ?
$ ^5 O) P9 W! m7 V: C
Dim subMenuItemPoint As AcadPopupMenuItem
- t, @9 k0 s+ ?( U$ B8 ^
2 g4 H& N7 O& R'Set subMenuItemPoint = menuItemDraw.AddMenuItem(menuItemDraw.Count + 1, Chr(Asc("&")) & "Point", macro & "_point ")* s! _* k4 ~0 d; B+ m
. d$ C8 N$ n7 C x: y
M# j h1 t/ |+ c; I5 E' 在菜单栏上显示菜单3 S6 M, G( I2 [9 }: S& [% h
1 X& \) f! d# `1 onewMenu.InsertInMenuBar (ThisDrawing.Application.MenuBar.Count + 1)
9 d& C- x; g! k$ `/ rEnd Sub
7 d6 ?7 v5 Q: E( ?+ s! p% h 7 a3 F. b) Z1 {' h
) I* t: ^! B1 K+ v! L6 [ J
4 `8 Z3 y* L2 e7 f! C- \: z
这个程序哪有错的? |
|