|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/ w& f, M) y% L9 B6 l, A0 u
' B3 X4 ?3 N3 F: {Catia二次开发源码分享: 关于创建命令和菜单方法
1 A+ n4 q3 t" Y" w9 j9 V; k! s
) w& a3 s+ H3 |% Y; p
, g+ g$ t) m3 y; j) x/ i, R, V4 Z9 ~' {4 q9 ~5 \* d' D1 {' ]
//Methods implementation: X* g) A/ q8 F+ b1 w9 `. V
" X `& m# @) Y% M. X' ^
void myAddin::CreateCommands()$ S- d/ w5 i; Y1 o( {& x
{2 ~: c) g' {' r7 z0 q; u( P( R' h
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL); f4 M D( Q3 A @# y( N/ C" W
new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
f/ ?$ i; r" X) B5 G; q. _. ?( k! Y new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
7 e Y( n. _) |9 @4 |} i, E2 T# ]$ @4 m, C7 D' ] q
CATCmdContainer * myAddin::CreateToolbars()& A7 }/ x) K/ w' Y0 r/ S m
{4 y. [- d4 I/ ^- J% m; U
G: G; X3 o9 U! X4 ?. l! A //设置工具条1 G+ W3 l! S" U) P: |! l+ F4 t
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
9 V& m) \" o4 D4 ` X, @3 Z5 M AddToolbarView(pPartBenchTlb,1,Right);
+ D) j7 L4 |* W3 {2 g" s! ]. H( q2 `3 ^/ X$ A4 d' \
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
2 [: Z" D5 D$ ]; M SetAccessCommand(pPointCmd,"CreatePoint");% Z2 X2 q9 o2 L9 {6 o+ \
SetAccessChild(pPartBenchTlb,pPointCmd);
; A r- O$ D6 @3 f# f( J4 U
9 H" j$ O( X; p NewAccess(CATCmdStarter,pLineCmd,LineCmd);2 l) K2 y6 p. B8 m9 K
SetAccessCommand(pLineCmd,"CreateLine");
- k3 |. Z7 U& D9 a- L& v) h SetAccessNext(pPointCmd,pLineCmd);
) S, Z- {9 W8 y+ u4 E4 u/ G
9 b, ^ A3 `& z- C NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
7 m2 }$ c, v8 u6 z) H SetAccessCommand(pDialogTestCmd,"CreateDialogTest");1 `3 Q! \; i" Q) G
SetAccessNext(pLineCmd,pDialogTestCmd); & w- h& y9 Q& v
1 ?% ~/ A4 }1 S! p- F0 J( j
) S1 Q6 t4 h2 U* R b //设置菜单
3 b) Z" C% P8 u9 q9 B/ z7 f% F( D; J4 c. ~5 }" c
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);4 U5 _ \* k6 z6 L! q
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
* g7 o, ?- [' u7 Y! Y3 x5 w NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);- }* `9 N m: I& J
SetAccessCommand(pPointCmdm,"CreatePoint");
( Y0 l' I' w" n9 \5 z+ v NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
7 {7 Z. H. |7 s2 l' p ~( { SetAccessCommand(pLineCmdm,"CreateLine");
2 Q6 z5 |$ f) C( I& G NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);! l& d& ]4 ~9 M: k0 D
SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
! u: B: {% a$ c ( J( ? m1 J: I( ^! c$ @
SetAccessChild(pPartBenchMun,pPartBenchSmu);0 o4 D6 f$ W! N! L, l! X: ?
SetAccessChild(pPartBenchSmu,pPointCmdm);
0 ~" Q. H* Y3 F1 z- d9 t" e9 |2 W- z SetAccessNext(pPointCmdm,pLineCmdm);
8 @% x3 ?2 ]. z# u7 A SetAccessNext(pLineCmdm,pDialogTestCmdm); , h7 I( K$ I: C
1 `; V, A$ Q# j. Q, r4 ]
SetAddinMenu(pPartBenchTlb,pPartBenchMun);
0 @ E o7 J `) P% A+ M! o
, A p7 C; O1 N7 k# ?* p
1 L. b+ E. n( v6 H0 ^% {5 y$ Q
+ H9 D2 {! d/ b) V return pPartBenchTlb;7 P/ T2 O/ W) K9 s" |* U/ Q( y
# r, q& v/ U7 w9 ]5 g; l( q
}; r& F. x) Y" i1 ?3 O' h( m; e( B6 _
# g2 a% W. w9 K. d) M' ` G
9 u1 m7 ]4 A, p: H1 F5 b
|
|