|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
3 ~% W; U! \+ V
& f) v: @, O) ?5 NCatia二次开发源码分享: 关于创建命令和菜单方法
2 F, w# C: a% E9 x% t% {
9 v# ^/ g4 {( S7 l6 s+ Y" h$ ~9 R3 |% G& K: } P. l# q# [/ _
. y& x' U1 ]/ X, p$ M3 \//Methods implementation+ v+ i5 c( v( E( ^& B. {/ _
3 f, r# x9 E( k* Z8 W) M7 Z9 Avoid myAddin::CreateCommands()
0 m- W. A& Q2 B{
/ W' K8 p# {3 W! Y c% u new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
8 {- |/ F0 h ~, s new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
: [9 w: P" G6 ]! { new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
' ]7 P6 e0 q0 u; l* m8 W}: Z- I8 E" [$ k9 E) ?' ^) J$ p
CATCmdContainer * myAddin::CreateToolbars()8 V1 t. d6 Y F
{5 U' |7 q. k+ p: E$ D
/ g5 O# m5 U y) V' q6 a/ U0 ] //设置工具条; G0 f$ s" r$ |3 D: E
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
$ s8 a/ {/ X+ c& O AddToolbarView(pPartBenchTlb,1,Right);$ z5 I3 _0 l9 i( Z; Q# x
7 P' `0 @1 k" u# d& ? NewAccess(CATCmdStarter,pPointCmd,PointCmd);
6 o2 C( s) `3 z+ p SetAccessCommand(pPointCmd,"CreatePoint");
7 `* B& } ]' \ Y, h- Z% b SetAccessChild(pPartBenchTlb,pPointCmd);
6 O+ B! |. I1 d- C: o/ v8 o3 ]7 P/ L3 t
NewAccess(CATCmdStarter,pLineCmd,LineCmd); y4 A/ B8 O3 N6 P+ ^$ s4 O
SetAccessCommand(pLineCmd,"CreateLine");
* Q3 B0 s0 T$ t; \7 y! y6 S SetAccessNext(pPointCmd,pLineCmd);
! G$ Q) b$ C6 v+ R4 {+ a; d6 k2 S! k, v+ p; V4 o( p9 ^2 U
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
- R; [% W" D1 e4 }4 L- } SetAccessCommand(pDialogTestCmd,"CreateDialogTest");8 Q% y* X. V/ g; w1 S& ~5 J+ `( c% {
SetAccessNext(pLineCmd,pDialogTestCmd);
3 j+ J* X9 y, S9 P( T0 S: k8 o! T Q! l5 n0 D' N% q/ {( C5 \
& X( L8 H6 {; w
//设置菜单
: [, B( O: t! k1 j# V, L6 s4 C/ N. B2 W2 }+ ^
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);0 [% G0 `8 V( N- W' s
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);- \0 |. O8 k2 F: u5 _& U/ z- U
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);% O# {( I* ~# Q' }
SetAccessCommand(pPointCmdm,"CreatePoint");
7 j. t/ a }; V9 j1 R7 R1 H NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
4 \5 j1 |8 [, u8 J, ~( _6 y' C SetAccessCommand(pLineCmdm,"CreateLine");* H: k' f8 l9 P3 ~! Q$ t
NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);+ G( R0 h) I6 c! s
SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");' C% E1 w3 l: g9 C
' j* `' G# _7 E SetAccessChild(pPartBenchMun,pPartBenchSmu);1 a! V5 N6 l/ t6 I# e( i
SetAccessChild(pPartBenchSmu,pPointCmdm);
6 q t! k. U+ r SetAccessNext(pPointCmdm,pLineCmdm);
7 K; o+ m5 b5 p/ Q# M+ } SetAccessNext(pLineCmdm,pDialogTestCmdm);
8 n+ Z+ H9 |: |) ^6 R- p, w! k: c) S1 s2 v( g
SetAddinMenu(pPartBenchTlb,pPartBenchMun);5 k/ W( d" l' ?2 ?+ Z2 c# u
8 Y2 q. F3 @% `3 E2 p6 W
( h" E ?/ S7 a* J
8 p( | E3 x, O# Y/ u7 k. t return pPartBenchTlb;
8 a/ N- x% P& D, h! ]. p" s E! s" n% ]4 f {- y7 {" w
}
1 L' A2 X: T/ Y) a v& x# {5 D* u. {3 ^ O7 a9 L
& R3 \, b; {6 l' }3 W
|
|