|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
1 `9 z, m! b! c$ K
( V' e, U) d: v7 eCatia二次开发源码分享: 关于创建命令和菜单方法. n$ I0 i) k7 n! r3 B6 \
+ q: J( r* N4 m0 z7 ^
0 U- Y7 R5 F/ N! X
/ d8 t' _) [/ O//Methods implementation
: _! w$ J. s# T1 y) z' _7 W
' G' T( w5 V6 ], Pvoid myAddin::CreateCommands()) e) e# e+ e% Z8 k
{; c, }: E" l7 b! b' m9 `
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
% _9 v+ c2 F- {7 N; L( [ new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
" r1 W9 G. S: i) @) J$ b* d, a new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
' a. G% H1 z+ H# f}" J. `/ W6 Y& h' [/ S' K+ M
CATCmdContainer * myAddin::CreateToolbars()
" s" i7 t$ t" f0 S- H0 {{
2 E( `2 u7 i6 m }. z+ i/ A
5 [, R8 G; U4 e //设置工具条# N3 H9 U$ N& Z7 c) t7 R
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);9 |: o4 Q% \. _ v0 h p( g
AddToolbarView(pPartBenchTlb,1,Right);
" S; j0 X) i7 X# t( u% @
2 o5 ~8 R/ i% q/ ]1 @8 c" C NewAccess(CATCmdStarter,pPointCmd,PointCmd);
/ A7 [9 v* b0 O3 v SetAccessCommand(pPointCmd,"CreatePoint");
4 Y# b6 u2 w8 C4 W: J9 r SetAccessChild(pPartBenchTlb,pPointCmd);
, o! H. S2 W2 x$ O+ l% @% p: I5 L9 N+ D- ?' [
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
# b8 H, \, M# ? SetAccessCommand(pLineCmd,"CreateLine");
, H$ M8 F5 A# M& v SetAccessNext(pPointCmd,pLineCmd);
, Z# K/ J0 y( h6 v, ]6 D2 S' \' H! ^9 }3 J' X/ p! J2 n
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
6 w. o7 N) U" _' Z1 X SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
) F6 a) q- C2 l- y; H. q- L SetAccessNext(pLineCmd,pDialogTestCmd); ; k, G% ~1 K6 b2 H h
; h$ I- Q; H! N9 y9 {
6 q/ \" y0 j0 U( f- F6 \ Q- k //设置菜单; p& u7 U/ N+ o3 C
o3 z/ |0 m5 `' a' A1 u }
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
6 j# I" s) a/ J8 Y NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);. r- F2 T% D7 k* f
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm); N& f) h" Q8 G. d- ^; q
SetAccessCommand(pPointCmdm,"CreatePoint");4 [+ G X7 q. j9 ]& \' A, a* Y
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
) X# ~1 h+ M8 q4 @9 r SetAccessCommand(pLineCmdm,"CreateLine");
* V/ {4 V. c7 [4 l# p) l NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);1 I# Y( r% D% U5 W+ }. Z5 C
SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");2 x9 W+ T' x# d8 n& o R
: B% F6 p8 o& r0 {; t0 r
SetAccessChild(pPartBenchMun,pPartBenchSmu);
9 q, r( m, `5 Y& v5 h9 i6 x# S8 o SetAccessChild(pPartBenchSmu,pPointCmdm);* i) X) U1 a2 V
SetAccessNext(pPointCmdm,pLineCmdm); / V# |1 m2 j2 @7 O0 ]5 Z
SetAccessNext(pLineCmdm,pDialogTestCmdm);
: j2 G `+ i" w1 ]1 u5 G e
: R7 s- C0 d/ X p, a6 I# n* x- B SetAddinMenu(pPartBenchTlb,pPartBenchMun);
+ U9 D7 P V4 f; Y1 e6 b. {. j P8 }6 E* g# j/ Y. V
0 w# _* \ t: ^( ~0 H* d, v- q) t0 j' o6 i
return pPartBenchTlb;
0 r6 m+ |" U# T0 M' G
" A3 J5 K) x4 f. f' q1 J}0 F0 K6 O; H4 }
& D: R2 a0 ^! }: o! V: G% N1 n
/ A0 H! s8 \; f, ]3 u |
|