|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
+ p- Z& r1 R. h2 G9 \+ M
7 A* f2 c0 v+ F, [" t( t. m# J& R
Catia二次开发源码分享: 关于创建命令和菜单方法
8 w' g9 _9 W+ G; C) u2 R6 W+ J1 g5 b; G( M+ w6 h5 q( ~, `- h* Y/ O
' H6 f7 T! Y8 u \8 C: h3 M3 V
5 F5 o9 M: g$ W8 K0 s
//Methods implementation. m3 j' r. p1 l
! Q" c) d- K5 n8 L: w* h% w
void myAddin::CreateCommands()
' ]9 v" `1 H/ O9 X9 I4 y" b7 b{
B1 |' x6 P; b! L2 Q j new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
! m" ?2 u0 n4 k. j. P new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);, i y4 M5 A& Z* ~/ W; G% ~
new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);5 R/ v' s0 W1 O" }5 j4 z
}
* v( S, o6 q1 p5 QCATCmdContainer * myAddin::CreateToolbars()& S% Z( d: k; i4 ^
{
2 I# W u1 c/ t
: D3 W, o. M! K0 |% x6 m //设置工具条
4 o, F" @( `$ P NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);- ~# A% H1 ^. V0 G9 W2 S$ C
AddToolbarView(pPartBenchTlb,1,Right);
' w: d2 h: i/ J2 n
; J# e$ F2 |, C! ~! A. C) Q' m NewAccess(CATCmdStarter,pPointCmd,PointCmd);
' f8 B- ?3 L; T! ^" J$ O1 ^1 w SetAccessCommand(pPointCmd,"CreatePoint");
& W f3 \# K4 R) o- \ SetAccessChild(pPartBenchTlb,pPointCmd);, \, z! M( V/ v' ?
6 `- Z6 K2 i7 Y- O) I# O NewAccess(CATCmdStarter,pLineCmd,LineCmd);9 p" R% p+ e/ z. P/ y- @
SetAccessCommand(pLineCmd,"CreateLine");
/ p2 e; H+ |4 G- y8 Z9 l V3 j SetAccessNext(pPointCmd,pLineCmd);
5 F8 L( O' H! `( h% a# f, m- N, f/ F, ^( F4 _0 j7 X9 ^, p% p! N4 t
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);' ~9 g% H2 Y+ }! z
SetAccessCommand(pDialogTestCmd,"CreateDialogTest");' M! S5 a9 j9 Z; W3 e, h- ?
SetAccessNext(pLineCmd,pDialogTestCmd);
8 l T- c* }/ `! p9 i/ L. V
, Q! r+ w- D% h# N& { - H% B/ ^9 m5 l$ H$ D
//设置菜单
R3 [9 o! {3 O+ H+ w( g" M( f: B( E. N2 y
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);8 f' f1 x8 z; o. j: I* i2 D
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);6 r7 ]7 F" B2 Y" v8 h$ S
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
0 d" R5 a) E4 l SetAccessCommand(pPointCmdm,"CreatePoint");
g7 {) s; f9 Q! Y9 s) S* S! o$ k; | NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);) u+ \ F% @) j
SetAccessCommand(pLineCmdm,"CreateLine");
# i' Y" P- Q3 E2 b NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
+ z0 N' D, c& L SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
- c q: t: `- D3 n. ]
* }- r {& [1 ?$ M* W SetAccessChild(pPartBenchMun,pPartBenchSmu); c) B$ `: i% f; q: \
SetAccessChild(pPartBenchSmu,pPointCmdm);3 @2 L- g7 k O; Y
SetAccessNext(pPointCmdm,pLineCmdm);
6 \+ ~6 h J. J SetAccessNext(pLineCmdm,pDialogTestCmdm); ) a; H$ R* a) e- {
9 |1 @: O' s* l/ f1 l& K: X SetAddinMenu(pPartBenchTlb,pPartBenchMun);9 i" q0 q% i$ q
: y- `0 F) N. L0 ]8 I1 Q r& R
# h2 }* k& Y4 k3 d6 a" ~, U4 o: f" N0 \
return pPartBenchTlb;# J1 {; m+ m5 x
" o7 S2 a% s2 @}
; g/ i g( S, F' b: L. u' _3 R* u3 w
0 ^3 F. ]6 \9 n) v* r |
|