|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
9 n8 T! {+ R6 f3 t" r* t- Z4 p1 n5 n2 S& j% d5 w
Catia二次开发源码分享: 关于创建命令和菜单方法
" s0 ?' t/ P! X" {4 a
' i) ]! p( o9 b* E6 o
% b/ y& b; t, F" ~$ I. f
6 _" D, @ \1 s% V5 [; u6 z//Methods implementation2 v6 j# n, D% b7 N# F
" k0 V- r) W) B1 Mvoid myAddin::CreateCommands()
7 o3 s8 V% Y9 {% l0 _{
1 c. R3 w: f- q new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);6 z9 E% V- V D! `* H9 D% A
new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
3 s; {! f2 k0 s& Q8 G: ? new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
& b1 A/ m1 ^' A6 j8 ]" `: f}. U% T1 b4 w( a0 N" N' v5 z# B3 s5 G
CATCmdContainer * myAddin::CreateToolbars()
( A9 M0 I G' w' Z: C( u{
+ w R4 \% \) v% D. S
* p$ t& j2 B) \2 @* o: k- U' a) s+ v //设置工具条+ j, @. T/ z! ~& @
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
% M# Y; b1 v7 {- ` AddToolbarView(pPartBenchTlb,1,Right);
( G% z3 L; I5 p( D" \* p
" N/ N7 A( ?, ]" t/ l. A" P" f2 ?3 N& N NewAccess(CATCmdStarter,pPointCmd,PointCmd);
1 w2 E( H) r" J! v* A- T SetAccessCommand(pPointCmd,"CreatePoint");" I/ c: }* K( N O# Q: D
SetAccessChild(pPartBenchTlb,pPointCmd);; f4 u8 f8 p, @# E |8 m. F
7 Y# C/ i R; q6 J# E* n: y* ]* e NewAccess(CATCmdStarter,pLineCmd,LineCmd);7 V3 u% R: h" C, c5 Q7 d2 b
SetAccessCommand(pLineCmd,"CreateLine");
" h& \8 l: X- J$ ~" E! V1 S SetAccessNext(pPointCmd,pLineCmd);
1 S$ u) T7 r9 Z ? x% d8 I' C! S
1 {9 |% E- ~8 z" o NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
5 s3 W' R- H1 i3 E7 R2 z SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
8 g# F" V$ ~. R; L6 h' N SetAccessNext(pLineCmd,pDialogTestCmd);
8 _3 s8 r- l; y; E( x4 c/ N" J H/ A
; b) r7 ]: `2 A, x! m: ^5 `! q/ M //设置菜单
4 u& T8 G% q( i [' g; i3 A, i0 Y7 o, K
, c" l8 q- i7 H( R' l0 N- a4 R NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
; _ `! G0 A5 w6 ]1 e4 z3 G! w6 R3 R NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);; }1 ] g! D* L, T: B1 {
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
+ N% W; U4 R" |- Y: e& L! b: a SetAccessCommand(pPointCmdm,"CreatePoint");, |! U0 K- V( L7 L
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
) @# s9 C; O0 d1 ?3 R5 g% n SetAccessCommand(pLineCmdm,"CreateLine");
, @* W7 x/ \9 p9 `% \- q NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
# a7 a, r6 `# P" F SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");* t; M1 l" R9 _: D
; p% U* M; Y' P+ T0 k% Z9 Y) k; E: {5 K SetAccessChild(pPartBenchMun,pPartBenchSmu);* x7 N, t; C6 P9 ?
SetAccessChild(pPartBenchSmu,pPointCmdm);
0 g1 o, t( V0 v% L {6 F4 h* | SetAccessNext(pPointCmdm,pLineCmdm);
0 W& r, J! ^9 R5 ^) F" z SetAccessNext(pLineCmdm,pDialogTestCmdm);
% `4 q4 z5 O: k
0 O# R3 o) T6 b6 t/ d SetAddinMenu(pPartBenchTlb,pPartBenchMun);
8 c+ V Q% O/ G6 M$ G5 X
( C( B1 x3 K, N- A5 C2 O4 k$ q. {) e- e! k2 A/ A0 M2 H1 t
6 \6 `6 n0 }" S) W/ e, P9 D1 j return pPartBenchTlb;/ Q9 f+ Z+ y2 ?
" B9 g+ I$ }2 R+ [9 X' B' Q; ?}# C p% j1 T3 V) L% Y! n, b
- R& U% i' F! N* f' @8 A8 ~3 Z
; e( o: o3 w/ X% y& @% x5 Q) C; X
|
|