|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
% L* }5 m; O: V! J, R6 P2 D. S: d
% q4 A% ?4 E T) g$ z3 x( K7 OCatia二次开发源码分享: 关于创建命令和菜单方法
1 W h# l2 \# l. T9 p; j3 h. c) G3 ]# R8 g( k1 `8 K
& r" \6 U& Y0 Y
2 K1 `4 u" l' C; O4 s//Methods implementation3 p3 w+ v$ r& _8 J$ E: u0 l
; e- w+ q$ i T- Svoid myAddin::CreateCommands()
# z# t3 H, I- f7 {" T+ ^{
, \* Y) m$ x% N0 c% i2 o new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
; M) e8 k5 v D new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
) h2 e- y( M# p# l4 O new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);; ?3 K( x4 I, C6 E' v/ h# t
}* d3 T* O7 ~$ o( l' ~
CATCmdContainer * myAddin::CreateToolbars()4 [: }/ X P; z5 d. t! K
{+ A# k4 g4 j; U- y0 `! I' v
* [! @# [3 B( G0 d //设置工具条
5 J! e, R1 E5 Q NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
" [( \1 S4 z; ~) p8 z ~5 q AddToolbarView(pPartBenchTlb,1,Right);1 s3 Z+ z3 I/ ?/ I9 {
+ X: _" S0 N% X, o
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
& {3 M8 e3 _; z5 X. ]7 d/ w3 j9 P! F% p SetAccessCommand(pPointCmd,"CreatePoint");
4 s; ~# t v) g; F* b SetAccessChild(pPartBenchTlb,pPointCmd);' e% R, ~% ^0 Q. F9 M# r5 u. [
$ k/ P1 S7 M# k7 E# j. B \! I NewAccess(CATCmdStarter,pLineCmd,LineCmd);" m$ D" G; L( Y
SetAccessCommand(pLineCmd,"CreateLine");% g$ E4 Q7 V) G/ b! ` B: q
SetAccessNext(pPointCmd,pLineCmd);
" e' Y( A5 V+ w, D' J* `
" |& x' l! `( x8 P8 l& G5 D' _ NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
3 ^; B! G# l8 u SetAccessCommand(pDialogTestCmd,"CreateDialogTest");: }, x2 d1 G1 R# g9 d3 Q
SetAccessNext(pLineCmd,pDialogTestCmd); + A/ d) e; ^; V7 ^+ \" d1 Y- a
$ E# t0 _( X' ^, G
# G) n( g% ]' g8 {% h( N //设置菜单
$ D$ E3 O h; x' _' \; l2 K: {( y! b# T. @
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
2 w% v7 I9 u% [* M NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);. R6 i( J( y* O0 B
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
$ o$ p0 B. ^1 J SetAccessCommand(pPointCmdm,"CreatePoint");4 ^, I$ L# I: v( D3 f5 Y3 B
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
8 L8 D) J1 W, \7 \8 w6 x SetAccessCommand(pLineCmdm,"CreateLine");& j) K- q7 U$ v+ }6 `
NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);$ F# n) W, P1 J
SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");2 m+ V9 A$ y$ c2 o6 A6 q
! D) p) V4 k! G! Q- L- a6 p
SetAccessChild(pPartBenchMun,pPartBenchSmu);
* g# t, [& t6 Q- A" C+ P$ Q. k SetAccessChild(pPartBenchSmu,pPointCmdm);
( N. Q" e0 v1 C7 Q7 z6 p# J$ t. u, n SetAccessNext(pPointCmdm,pLineCmdm);
, ~5 C6 a* s3 ]1 f6 U5 B SetAccessNext(pLineCmdm,pDialogTestCmdm); 1 k3 X2 c: @1 a% Y. W w
9 i- Q" e. b7 a0 E+ P SetAddinMenu(pPartBenchTlb,pPartBenchMun);
; J! c: W; k$ Q m. t
9 S2 Z8 H& P! F! w
& u: c2 J* L! U1 L1 K8 t
7 R" S1 m) L2 M6 {8 o8 o- b; _ return pPartBenchTlb;
6 o, W! r' v' L- J( R2 \2 Z
; y1 j: e& v' X/ g8 J}
" h1 j. q2 e8 ?( [9 \. ~
3 S& x P0 E+ K8 f( H" E
6 n( Q7 P1 d5 Y& b; p |
|