|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
" q* c0 o# m: R9 J: r0 I$ |6 F7 r
S% J5 Q4 w0 I" j- m; o7 b
Catia二次开发源码分享: 关于创建命令和菜单方法
Z2 P0 Q" Z/ C! t7 ^! Q2 D& V6 a0 e8 K9 H" Z
8 i2 r8 W) q+ H/ b9 }' w
1 U- Z' C5 K( ]) L5 w//Methods implementation
; a% B% Q* x2 M* y" `
4 S& C8 y8 w' P9 Kvoid myAddin::CreateCommands()
7 N! J6 w2 J, V0 L. P: F+ K0 U, s{
5 r( ?, M5 Z- Q' X5 w" V$ { new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
3 a, \' i4 R' T, G9 F- n new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
4 j$ ~, @! q/ N+ t, \ new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
% Z1 H) S& W+ G1 k3 m# L) n9 h}
5 Q& S2 k4 Z" D( t. ~6 h1 Q( _1 V+ jCATCmdContainer * myAddin::CreateToolbars()
9 L% j& c& T; U; D6 J+ G) u& A{
# q0 T& e. O6 L
. p9 H- F; r7 i. h. R+ s9 P //设置工具条
( o# }1 x, Y/ x; M0 n NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);" E* D J& G% \( ]
AddToolbarView(pPartBenchTlb,1,Right);
' m8 v* t/ _: ^- M) G, F% h3 s; K2 @( _5 I2 E h
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
! F2 y$ `4 @8 `7 X SetAccessCommand(pPointCmd,"CreatePoint");6 M9 D# P( d% J3 c/ F9 Z. a) k
SetAccessChild(pPartBenchTlb,pPointCmd);7 X4 D& B) j! \: O0 o) M/ J' Z
7 v: p/ ?& v# d8 {: m: f( C; B3 q
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
: S3 B" w0 q* d8 T/ {( p SetAccessCommand(pLineCmd,"CreateLine");
: ?6 f8 G4 {# x! q SetAccessNext(pPointCmd,pLineCmd);
- z% @6 D1 j) \6 `( R6 Y9 ]% U0 P: A/ k: h- G
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);3 l* F/ U- n0 X, D. N% p1 _/ F
SetAccessCommand(pDialogTestCmd,"CreateDialogTest");0 g1 ~9 z6 v! q9 M
SetAccessNext(pLineCmd,pDialogTestCmd); " u* J: M5 n. Q
+ o0 p% r, J" {/ j9 y( e
$ u6 I- B5 z5 m5 u. r; X' z
//设置菜单* t4 j- n7 H8 r6 G4 I
/ O! K6 A1 T. J# q0 f NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
5 t& W& _5 k) G5 ^: U$ Z& L) T NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);% D" G1 t1 @& ~/ }' y! {* `
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);: }' K9 f/ @: | |# q6 ] }
SetAccessCommand(pPointCmdm,"CreatePoint");+ g0 i8 k0 k: ?7 H; @
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);$ F( v: z9 D$ F2 ^; h& Q
SetAccessCommand(pLineCmdm,"CreateLine");9 v& L5 @3 Y% R& w& n! X; h' ]2 O
NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
; \- O5 W4 k7 y z% e" V) f2 S7 P SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");2 B5 ]8 o' ~; b& f- Z0 M. n
# s/ {+ E. V+ b6 T+ j) [
SetAccessChild(pPartBenchMun,pPartBenchSmu);
4 _2 E+ B/ I0 X' |9 C SetAccessChild(pPartBenchSmu,pPointCmdm);
N* n. u9 m0 o' L SetAccessNext(pPointCmdm,pLineCmdm);
: P& W) g' Q* {7 X3 J SetAccessNext(pLineCmdm,pDialogTestCmdm); " T/ h% ]: E9 t; ]6 H4 r
! S& v0 q# }( h$ j0 Z! K SetAddinMenu(pPartBenchTlb,pPartBenchMun);
. ^7 m) c) E& b9 c6 W/ l9 P+ C: L2 r# U' x: p# l& V
8 n3 X/ t) ?8 z8 {0 L; L1 u
+ k+ x( Z l- c) }
return pPartBenchTlb;; X! y- i: ]9 n0 ~4 Y
9 ^' n2 @3 S# y/ s5 T, |
}
4 r8 F# `, T3 T2 i* l. T1 Z5 i. ?
* \; C" h7 E2 ?2 m& C% b7 `0 W0 ~& G
& m* t% `- I* j+ U% B' C! c |
|