|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
8 {/ c# F8 E2 o% A8 ~$ T
% [- ? }7 \( v- u% \1 o
Catia二次开发源码分享: 关于创建命令和菜单方法& F& A0 }" B, Z5 ]0 T
6 M3 @( F( N1 {! Y8 [* ^( x* t4 }+ E4 s8 [' |+ i" c5 ~ R/ W
' {6 h' n- g2 ]4 O) P
//Methods implementation3 m4 X. l2 C$ j; e) ^8 b% R* x
3 h3 M- v7 Q2 d7 _: }# L) ovoid myAddin::CreateCommands()
% J/ c' o3 _8 D; t5 A3 ~! P/ |{6 \- J- c. c+ y$ q6 ~; r. r
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
4 o6 {: O0 d( _3 c W6 e new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
- e9 A) L+ a9 ]3 {' B& [ new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);; I7 Y' z/ Y* l$ |! Q: A, g
}
4 C) |9 J8 t! Y# [6 I' \CATCmdContainer * myAddin::CreateToolbars(). Z+ X5 I: Y) F$ }" }9 j
{# c m6 B. e# v' n; b0 r
\; K) }! g! X k' _' j
//设置工具条$ C: ` ]2 C" w" ^# Q c# ?8 k
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
* q! n _: ]: {( f3 L/ L AddToolbarView(pPartBenchTlb,1,Right);* {* ~8 X' n( l+ M" u
0 O5 n) c3 u/ V) W# S0 w6 ^
NewAccess(CATCmdStarter,pPointCmd,PointCmd);1 K+ ]& n+ {/ ~0 ~# `% u
SetAccessCommand(pPointCmd,"CreatePoint");
, e: n7 H7 G6 b% l6 ?+ v" I8 s SetAccessChild(pPartBenchTlb,pPointCmd);0 i2 V+ t& \7 M4 u6 j% ]
! F5 P% ?- m9 {$ k3 U# k NewAccess(CATCmdStarter,pLineCmd,LineCmd);+ L* ~1 w5 t j, i1 Y
SetAccessCommand(pLineCmd,"CreateLine");* h0 z0 E% g2 V1 @, {
SetAccessNext(pPointCmd,pLineCmd);
: x0 m1 v8 B: r: [- u- A
+ A, }; S; w. D. r/ V% x NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);. q! q$ N$ Y: s& ^1 Z) }
SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
0 B. |8 ^6 J2 B! I1 t- h* e SetAccessNext(pLineCmd,pDialogTestCmd); # ^7 Q/ r) W5 c
* w2 }6 D; n0 T6 b 8 L; G$ a" Z$ D' u! I% u
//设置菜单
1 I( F* I" k4 b7 t1 j' h& A: z( A
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);( E3 H9 L! w9 r% d' v, @
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);, o3 }' h/ q0 O; g( D4 [
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
# N6 O1 n7 X1 @& I7 q. T SetAccessCommand(pPointCmdm,"CreatePoint");' p. _ ?9 M- W
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);8 Z+ [; @/ Y3 J3 I% m# g5 n0 ~
SetAccessCommand(pLineCmdm,"CreateLine");
+ ?: f1 j' y I5 n- A, p NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
& h% h7 z$ H, W SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
1 u2 {8 i9 _7 M4 a: o: d
' F6 P6 P* Y, _( T7 s( I: j SetAccessChild(pPartBenchMun,pPartBenchSmu); A) W- e% t1 E+ ^/ ]4 I0 ]- P
SetAccessChild(pPartBenchSmu,pPointCmdm);( B7 _$ Z# Y+ v4 R' x$ \, f& _3 e
SetAccessNext(pPointCmdm,pLineCmdm);
3 V0 ^5 l; W4 |# S SetAccessNext(pLineCmdm,pDialogTestCmdm);
: m& q' n7 y" x/ t% I2 G& [" \ c: A, P7 h4 ^( X6 h. U% b! K9 `
SetAddinMenu(pPartBenchTlb,pPartBenchMun);
" h+ r8 v4 I1 G: \! {5 Y2 B1 D/ A; [
* \( g \8 A/ ?) \1 ]2 O+ X+ |
N+ M4 t2 P) B
" [* Q4 c$ _7 |6 H& o7 ]7 S2 s1 _ return pPartBenchTlb;
9 v2 Y N l1 |" q1 R/ e% Y, b) N( X+ j- o+ A- k) d9 v
}9 y& u" w7 _3 m4 T" v+ @/ w+ U
3 G0 S( ?0 b9 l
0 }- }. P- ]6 e0 e$ T4 {7 u- k- T |
|