|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& q. J3 R8 N2 U2 v3 A: j8 u3 {
& \7 P' w' i5 X6 f% M R
Catia二次开发源码分享: 关于创建命令和菜单方法2 z8 J3 Y. J9 S$ [. \
/ l( b1 K' E/ J7 Q
2 q5 |, ?6 P0 n4 j R: {1 L _& ^( z( r' p9 j
//Methods implementation
* M: a, Q8 E$ T7 l. q
+ \; l5 L, T2 Ovoid myAddin::CreateCommands() {* e1 A0 F, R
{
0 S' ~0 i0 |) C* `6 P# F new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
- O& l" K7 R5 z new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
# y4 I! e3 Z: w new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
9 Y% l9 l' B% X9 h0 M9 g' N}) V* b: \5 }+ C) l: Q
CATCmdContainer * myAddin::CreateToolbars()- V, d' _: n8 [' d: A, b7 Y# e
{
# l8 l2 P* P8 _4 y
; q3 p& F8 f# R //设置工具条, ]* r5 w, H% W0 Q8 t
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
3 H8 x) ]' G( E+ Z. |0 N AddToolbarView(pPartBenchTlb,1,Right);0 F+ _! t# m& ^1 d, n! A0 W4 S
# M: u- B v4 |9 i
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
9 j7 Y! F4 g, t2 J SetAccessCommand(pPointCmd,"CreatePoint");
+ d$ C/ ]: t/ s$ ]$ T7 e) R1 x SetAccessChild(pPartBenchTlb,pPointCmd);
i F; R5 Z% Y1 i# p5 Q, e) [8 q z* T1 _( D# f( M L1 D/ R
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
( i* \0 @# u) i8 A SetAccessCommand(pLineCmd,"CreateLine");
. `: S% N, S! R0 B+ o SetAccessNext(pPointCmd,pLineCmd);
/ E7 B1 O+ T; K" L4 A( C" Q* V7 w6 C3 S# b+ J: Y+ {: M
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
" S: r; l' R+ p( P: P0 U; Q7 ^8 X SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
* v0 e. u B9 C. M SetAccessNext(pLineCmd,pDialogTestCmd);
" E) B7 _& f: }2 }, t3 h6 o( ]
; S/ Z6 p ?+ P& `) P
! H% b0 h1 ?/ i0 H //设置菜单
5 @" f/ c1 V6 @) _8 L1 D- j) A2 h# ?
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);4 R% [# G, z; A3 }
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);! g) Z$ z& A% a: l# v) F
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
3 N5 @7 H( f* U; u l% C5 e SetAccessCommand(pPointCmdm,"CreatePoint");2 q& h' f4 O: V, q# q# g
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
) T5 Z: U" J! H, r9 x/ h/ \ SetAccessCommand(pLineCmdm,"CreateLine");
* ~7 B1 h4 `, ]9 V& x, | NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
5 c- t' D, ~4 Y& b8 ^7 |9 b% W SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");3 r& ? |$ ?% [; p9 e+ \
; T8 \2 u' o, Z8 W: h5 Y2 B6 M3 ]3 _
SetAccessChild(pPartBenchMun,pPartBenchSmu);0 s5 \$ I# v1 ?6 @) Q, f4 B
SetAccessChild(pPartBenchSmu,pPointCmdm);% m5 ?3 }* f) H i- |2 L8 E
SetAccessNext(pPointCmdm,pLineCmdm);
' h' i3 s1 J4 U" z9 W# X. o SetAccessNext(pLineCmdm,pDialogTestCmdm); ' y! Y0 [. Q7 U6 t& n
& }3 C: S: k; T0 }7 M8 ?% c SetAddinMenu(pPartBenchTlb,pPartBenchMun);
( p, V0 x+ E( A$ z- i% V! v3 S) ?7 R- l
S) U1 `7 U# k2 P
( L1 i6 u0 Y+ X( D return pPartBenchTlb;
; n8 d+ o" j! ^, E/ O
- ]5 E9 H+ { P, l& Z$ B}
/ ~0 W4 V% B. f M. u7 I$ U' g+ B% E. x! h; D3 H( O
9 |% p& A7 j$ j, _7 w& H( u
|
|