|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
: `6 ]4 L% h& X4 T* n
7 u4 g! q) {' x9 BCatia二次开发源码分享: 关于创建命令和菜单方法
o0 H" t: C! @" Z6 |* t, L- e) ]. }
" a2 ?7 b# u6 e2 }- {) ^
: t! k/ d* t' ^" t//Methods implementation
u+ ^, A% V) Z2 d7 K7 ^1 d2 X) [( j; v# A: p# J
void myAddin::CreateCommands()
9 i+ B4 [5 l" s; w5 y, N& g{& @4 a7 S* v6 @* t' M4 e
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);) \0 I% l% A' ~
new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);1 M4 p& A% P1 V8 O
new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
1 j% b- n( c2 U3 j* }+ B$ c}
9 D; S! C: a {& \- R5 I% }; aCATCmdContainer * myAddin::CreateToolbars()5 W! I& X5 j$ P: z4 i
{. u: @6 C! ?- z0 I( q1 {9 }
& X. |) F, m6 C( s4 n+ Q$ \1 N
//设置工具条
x6 z7 h# d1 J. m8 v9 b NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
: F4 M% O' o. e5 T AddToolbarView(pPartBenchTlb,1,Right);. i7 }1 U x4 e8 L( i
- l C! Y, b" M5 p: O$ j
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
4 B+ K5 F. Y" H. x SetAccessCommand(pPointCmd,"CreatePoint");
* W G: t! C9 l% r1 l w& g SetAccessChild(pPartBenchTlb,pPointCmd);0 C" c" ]) }) T( h! E } Y( i% j
' Y$ m# J" w( G$ |9 v, t
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
2 I( Y8 ^7 U* B! w! R, u& M SetAccessCommand(pLineCmd,"CreateLine");
0 C8 B: _8 ?4 P- d5 \( I SetAccessNext(pPointCmd,pLineCmd);
+ ?* T3 d- }+ g+ M) Z& j D( U% y# z3 {9 ]) s8 U8 c; q$ p! [( z
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
0 x; h* M) c/ d. M [ SetAccessCommand(pDialogTestCmd,"CreateDialogTest");! [5 d: Y9 T% e3 d7 ]7 Y
SetAccessNext(pLineCmd,pDialogTestCmd); 4 n) }+ z7 `3 m( Q; w" f8 l
0 w$ w* t- H& Q& J
i/ u2 c8 f2 ~) t: [7 j: d
//设置菜单 Z& C3 ^ G; @: e& T8 i8 ]5 N
6 c% e0 w; u+ _7 x: b* q6 C* Q/ ] NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
; O q3 G3 y9 W0 x NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
! m1 ?+ q2 f) f X& o NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
$ u. D+ d6 ^* D/ C$ W SetAccessCommand(pPointCmdm,"CreatePoint");0 N2 G4 m) N0 w7 c7 s+ U
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);* \+ l( c- N" a0 S
SetAccessCommand(pLineCmdm,"CreateLine");: b( a- h4 E6 d4 H" l3 p
NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
! V- P2 c) Z' x9 w8 H! ?# ~' {5 j/ { SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");6 c+ H" t7 k8 T- C0 g
/ A W( l8 O" l* d' w SetAccessChild(pPartBenchMun,pPartBenchSmu);" I, w& V# B5 H3 C5 V8 l/ O
SetAccessChild(pPartBenchSmu,pPointCmdm);
1 |! K2 _! {, V# I SetAccessNext(pPointCmdm,pLineCmdm);
' a; ^, ?( ~& F( I1 g7 f- h7 Y SetAccessNext(pLineCmdm,pDialogTestCmdm);
. T( V$ d. \5 q' _" H& w& H' _, E) L$ D0 F9 C( B
SetAddinMenu(pPartBenchTlb,pPartBenchMun);7 M( A) W8 \* Y% G3 M- F6 h
- B/ Z3 j3 k3 I
* t, g( C' o$ G! h s( M/ d
k" @- j( z( ]
return pPartBenchTlb;6 I3 w, p' Y# V, |6 d
+ G& d# e& T1 m' L& o}; b: y# k7 I5 R' H
" U7 b" w3 e0 n( X# Y1 M; ^/ {0 N/ O
7 i1 s9 P6 ?/ g! ^, G H0 C+ h |
|