|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
% H' c# b2 ^" \! L2 R% x
0 _# r$ H7 N. Z8 @; z
Catia二次开发源码分享: 关于创建命令和菜单方法
, W( E3 p% X- c2 E7 W
( i0 J) P( U7 Q& z# ?* h- }8 P3 ~$ L1 X$ C- I9 Z
0 M; n0 d5 }8 h) l' Y
//Methods implementation1 S- V8 N- \5 s2 @7 x; E; U9 _! {
/ t4 E$ a. E$ v! _% xvoid myAddin::CreateCommands(); [& Z6 P% k, _9 L
{/ j- Q' ^1 r! @4 U
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
- i1 j7 H3 R* e& Z3 H new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);# t6 t2 M' M9 M$ ?- P
new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
7 q3 d' D0 O8 Y; x4 Z}
8 j5 A: n; S( {1 s8 GCATCmdContainer * myAddin::CreateToolbars()2 |' X7 t8 H& [. w
{, a S' w8 Z0 c/ Z0 p
3 X+ g, @* q4 G8 _6 j% |
//设置工具条
' \# f' Z$ S1 X2 n9 G NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);3 M, I# E$ Y7 P8 D2 L" N
AddToolbarView(pPartBenchTlb,1,Right);& ?! [, v) h% S1 X4 z
9 D2 y0 S2 s( g" A: B: E. v* W
NewAccess(CATCmdStarter,pPointCmd,PointCmd);- a r' _9 y' ~# V
SetAccessCommand(pPointCmd,"CreatePoint");- i7 R: |* g9 H/ C6 j
SetAccessChild(pPartBenchTlb,pPointCmd);
' D& U2 `8 e) K$ c! X/ C, O! b
. r( S/ s0 S, K5 A( w& n NewAccess(CATCmdStarter,pLineCmd,LineCmd);/ M% T+ ~( ]) z. K& o" K5 P
SetAccessCommand(pLineCmd,"CreateLine");
: p+ s5 S( X& e# W SetAccessNext(pPointCmd,pLineCmd);
# q) l7 g! v, g, b% o) f/ p- S' O' ]. \) X
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
% ^. a. r$ `$ s$ J* k6 {, S SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
/ z2 z: E: E: }) Z/ X SetAccessNext(pLineCmd,pDialogTestCmd); ; B; f) T# o- f% E A
1 U% H$ \. t" M- P0 ^# V1 z + r0 a% E2 t1 C0 G' W' B5 v3 A
//设置菜单
* \/ ?$ u: v7 U2 d+ P1 ?0 _! ]2 I: m/ f4 L
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
' N" h5 l: _/ N0 O* I3 F0 b NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
/ D& l5 E: n/ k, S NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
7 X8 X. {( j. }' z% a SetAccessCommand(pPointCmdm,"CreatePoint");
% D& `4 v, P" n+ f* e. \# D0 F NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);# R, }) G. H) q, \/ X, r% f9 F/ J
SetAccessCommand(pLineCmdm,"CreateLine");
2 U- h' B9 @( A3 Y; i/ [7 d6 D- p NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
9 e9 j% a' T2 H. h SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");8 L- x% u% i5 g. D2 J/ D
& R, i. N0 {9 P8 n6 H6 H8 ^! Z/ E: B
SetAccessChild(pPartBenchMun,pPartBenchSmu);
, b4 W; m# R* H& i' {# j2 I6 A SetAccessChild(pPartBenchSmu,pPointCmdm);
7 Z5 c) x, h1 w3 f SetAccessNext(pPointCmdm,pLineCmdm); " O, `( [! x# M& O, c' l4 B5 E
SetAccessNext(pLineCmdm,pDialogTestCmdm);
. [5 F/ N h! y+ s+ {
( U7 N) [: X" \" U1 p SetAddinMenu(pPartBenchTlb,pPartBenchMun);4 |/ s8 c/ Y" j# u# r3 R& G% b
& u x! K9 M6 [
0 i# x1 [- ^4 B3 Q) w7 Q
8 U4 p% C) n6 z7 e8 D) w return pPartBenchTlb;) Q6 j2 l% h/ p$ Y
7 F, ?) M, G4 q# j6 W/ ~. j9 f4 v
}
5 j- ]8 ?/ g/ Y( X5 Z; p2 B z$ ]* z0 L0 T- Z0 a
; L9 M6 i8 Y$ }3 [5 R( L+ T
|
|